Methods and systems for identifying an information resource for answering natural language queries

ABSTRACT

A media guidance application may detect that results provided in response to a natural language query entered by the user are not relevant to the user. The media guidance application may then identify a media asset type and a media asset name that corresponds to the natural language query. Based on the media asset type and the media asset name, the media guidance application may select an information resource, transmit the natural language query to the information resource, and retrieve and generate for display an answer to the natural language query from the information resource.

BACKGROUND

In conventional systems, users have the ability to enter search queriesfor performing searches for a wide variety of information related tomedia. Because modern search engines can effectively associate arelevant result with one or two significant keywords, users may be ableto quickly find relevant results for search queries describing simpleconcepts, which typically require a small number of significant keywordsto describe. However, in order to describe a more complex concept, usersmay need to enter a query consisting of a mix of low andhigh-significance keywords. This type of query is frequently written innatural language. Conventional systems are unable to effectivelyidentify relevant results to a natural language query. If the user doesnot identify a relevant result, the user may attempt to restructure thenatural language query in an attempt to obtain a more relevant resultset, which may further frustrate the user, as a conventional searchengine is not likely to produce more relevant results in response to arestructuring of the natural language query.

SUMMARY

Accordingly, methods and systems are described for a media guidancesystem that can identify information resources for answering naturallanguage queries. A user may enter a natural language query into asearch engine. For example, the user may wish to determine the name of aSeinfeld episode in which Kramer, who is a character in the show, ishired to work for a company. A user may enter a natural language querysuch as “What's the name of the Seinfeld episode in which Kramer gets ajob?” Should the user enter a subsequent and similarly structured query,the media guidance application may determine that the search resultsprovided in response to the first natural language query is not relevantto the user. The media guidance application may then accurately identifya relevant information resource that can answer the natural languagequery by identifying high-significance keywords such as keywordsrelating to a media asset type and media asset name. The media guidanceapplication may transmit the natural language query to the identifiedresource. For example, the media guidance application may determine thata specific online resource (e.g., “Seinfeld Forums,” a forumspecializing in Seinfeld-oriented trivia) is likely to provide an answerto the natural language query. The media guidance application may thenretrieve the answer from the information resource and present the answerto the user.

A user of the media guidance system may use a search engine in order todetermine an answer to a media-related question. For example, the usermay have heard from a friend that an especially entertaining Seinfeldepisode aired the night before in which the character Kramer finallyfound work. Wanting to see episode, the user may wish to identify thename of the episode, in order to determine whether the episode will airagain. The user may also attempt to attempt to determine whether theepisode is available on demand from a source of media. In an attempt tofind the name of the episode, the user may speak, into a microphone, thequery, “What's the name of the Seinfeld episode in which Kramer gets ajob?” The media guidance application may then process the user's spokenquery into a text-based natural language query, and input the naturallanguage query into a search engine.

In response to receiving the query written by the user, the searchengine may provide a set of results. However, as questions written in anatural language format usually consist of a higher number oflow-significance keywords and a lower number of high-significancekeywords, modern search engines are unable to consistently distinguishbetween low-significance and high-significance keywords to prioritizesearch results. For example, a search engine may not be able todetermine that the word “job” is significantly more important to theunderstanding of the intended meaning of the query than is the word“name.” Thus, for example, a document referencing the name of theepisode (e.g., “Bizarro Jerry”) may appear on the seventh page of theresults. Because users typically do not review more than a couple ofpages of results, the user may decide, after reviewing the first andsecond pages of results, that the user should rephrase the query inorder to obtain a more relevant result set that would contain the answerthe user hopes to find.

Thus, the user may restructure the query, and regenerate the search byentering the query “What's the name of the Seinfeld episode in whichKramer has a job in an office.” The user may hope that by rewriting thequery, the search engine will bring about a more relevant set ofresults.

The media guidance application detects that the user is enteringmultiple queries into the search engine. For example, the media guidanceapplication may compare the two queries to determine whether the queriesare similar or not. The media guidance application may use variousmethods to detect a similarity between queries. One method involvescomparing the number of letters in common between the two queries anddetermining the amount of overlapping letters between the two queries.If the amount of overlap is significant, the media guidance applicationcorrectly determines that the user is unsuccessfully attempting to findan answer to a question by entering multiple queries targeting the samequestion.

The media guidance identifies high-significance keywords that arepresent in the context of the user's query and identifies a web resourcethat is most likely to provide results for the query. Specifically, themedia guidance application identifies the type of the media and the nameof the media. For example, the media guidance application may determinethat the word “episode” corresponds to a “TV Series” media type, andthat the word “Seinfeld” corresponds to “Seinfeld,” the TV series.

The media guidance application then identifies a web resource that isknown to contain information that is highly relevant to the media typeand media name identified by the media guidance application. The mediaguidance application may use a database of web resources that areassociated with media types and names. For example, the media guidanceapplication may determine that a website (e.g., “Seinfeld Forum”)contains a significant amount of information about the show “Seinfeld.”By identifying one specific and highly relevant resource, the mediaguidance application ensures that a highly relevant result set isgenerated based on the user's query (e.g., “What's the name of theSeinfeld episode in which Kramer gets a job?”). Thus, the media guidanceapplication overcomes a significant limitation of conventional searchengines, which are unable to identify relevant information resources,such as websites and forums that are most likely to contain a relevantanswer to the user's question. Next, the media guidance application maysend the user's query to the identified web resource (e.g., the website“Seinfeld Forum”). The media guidance application may determine whetherthe user's question had been answered previously by a user of thewebsite's forum by searching forum topics. Should the media guidanceapplication determine that a similar or identical question had not beenanswered in the past, the media guidance application may post thequestion on the website's forum.

Finally, the media guidance application may return the answer from theweb resource to the user. For example, the media guidance applicationmay determine that a user of the website's forum posted an answer to thequestion. The media guidance application may then retrieve the answerand present the answer on the user's screen. Accordingly, the user mayfind out that the name of the episode in which Kramer finds a job iscalled “Bizarro Jerry.” The media guidance application may subsequentlypresent options to the user that allow the user to take action on theprovided answer. For example, the media guidance application may providean option to watch the episode “Bizarro Jerry” on an on-demand videoservice (e.g., Hulu), or to find upcoming air times of the episode.

In some aspects, a media guidance application that is executed bycontrol circuitry of a user equipment receives a first natural languagequery from a user. Control circuitry and user equipment will bediscussed in the detailed description with respect to FIGS. 9 and 10. Inone example, the media guidance application may receive a naturallanguage query from a user who is interested in determining the name ofa Seinfeld episode in which the character Kramer is hired to work for acompany. The media guidance application may receive a natural languagequery corresponding to the user's question by way of a user inputentered via a user input device, such as a keyboard. For example, themedia guidance application may receive a natural language query such as,“In which episode did Kramer get a job?” by way of an on-screenkeyboard. Alternatively, the media guidance application may receive thenatural language query via a microphone when the user speaks the naturallanguage query instead.

The media guidance application retrieves a first search result for thefirst natural language query. For example, the media guidanceapplication may, in response to receiving the natural language query“What's the name of the Seinfeld episode in which Kramer gets a job?”from the user, submit the natural language query to a search engine. Themedia guidance application may then receive a result generated by thesearch engine. For example, the media guidance application may retrievea result associated with the Wikipedia entry for “Cosmo Kramer.”

The media guidance application generates for display the first searchresult. For example, in response to receiving the natural language query“What's the name of the Seinfeld episode in which Kramer gets a job?”from the user, the media guidance application may generate for display,on a display screen, the first result. For example, the media guidanceapplication may generate for display identifying information associatedwith the result corresponding to the Wikipedia entry about Cosmo Kramer.Because a conventional search engine may consider all keywords whenranking the results, the results, including the first result, may beirrelevant to the user.

The media guidance application receives a second natural language queryfrom the user. For example, the media guidance application may receive asecond natural language query from the user who, when the user does notconsider the results provided in response to the first natural languagequery to be relevant. The user may attempt to restructure the naturallanguage query in an order to procure more relevant results. Forexample, the user may find that the result corresponding to the naturallanguage query “What's the name of the Seinfeld episode in which Kramergets a job?” does not contain a relevant result. In such a case, themedia guidance application may receive a second natural language queryentered by the user, such as, “What's the name of the Seinfeld episodein which Kramer has a job in an office.” The media guidance applicationmay then repeat the process of retrieving and generating for display asearch result corresponding to the second natural language query.

The media guidance application determines an association metric relatingto a similarity between the first natural language query and the secondnatural language query. The media guidance application may compute astring distance metric between the first natural language query and thesecond natural language query to determine whether the user isattempting to unsuccessfully generate a relevant result for the samequestion using both the first and second natural language queries. Forexample, the media guidance application may determine that the firstnatural language query and the second natural language query share fivewords that are common to both queries. The media guidance applicationmay then set the association metric to the result of the calculation ofdividing the number of words common to both natural language queries bythe number of words contained in the second natural language query. Forexample, the media guidance application may determine that the secondnatural language query contains sixteen words. The media guidanceapplication may then set the association metric to the result ofdividing the number of words common to both natural language queries(e.g., six words) by the number of words in the second natural languagequery (e.g., sixteen words). In this example, the result of thecalculation is 0.375, and the media guidance application may set theassociation metric to the calculated value. A significant associationmetric may be indicative of the user unsuccessfully searching for ananswer to the natural language query.

The media guidance application determines whether the association metricmeets or exceeds a threshold. For example, the media guidanceapplication may retrieve a threshold stored in a storage device, andcompare the threshold to the association metric. The media guidanceapplication may determine a threshold in a number of ways. The thresholdmay be based on the output of a function, the inputs of which mayinclude any characteristics of the first natural language query andsecond natural language query, such as the character length of one orboth queries, the number of keywords in one or both queries. The mediaguidance application may then store the user-defined threshold instorage, such as in storage further described in FIG. 9 andadditionally, may associate the threshold with the user by storing thethreshold in a profile associated with the user.

The media guidance application, in response to determining that theassociation metric meets or exceeds the threshold, performs a number offunctions to retrieve an answer to the natural language query. In someembodiments, the media guidance application may identify a target mediaasset type corresponding to the second natural language query, inresponse to determining that the association metric meets or exceeds thethreshold. For example, the media guidance application may, byperforming an analysis of the keywords corresponding to the secondnatural language query “What's the name of the Seinfeld episode in whichKramer has a job in an office,” determine that the second naturallanguage query contains information about an episode. Further, the mediaguidance application may establish that an episode should be associatedwith a “TV Series” media type. By specifically searching for andidentifying a media type in the second natural language query, the mediaguidance application may effectively begin to narrow down the number ofinformation resources that are relevant to answering the second naturallanguage query.

The media guidance application identifies a target media namecorresponding to the second natural language query, in response todetermining that the association metric meets or exceeds the threshold.In one example, after the media guidance application determines that themedia type corresponding to the second natural language query is “TVSeries,” the media guidance application may identify media records in adirectory of media asset names, stored in storage, that correspond tothe “Kramer” keyword of the second natural language query. For example,the media guidance application may identify that the keyword “Kramer”corresponds to the TV Series show “Seinfeld.” The net effect of this isthat the media guidance application can limit the search for the answerto the natural language query to a few highly specific and highlyrelevant information resources.

The media guidance application accesses a database of informationresources, wherein each information resource is associated with a mediaasset type, a media name, and an information resource locator. Forexample, the media guide application may determine that an informationresource is associated with a media asset type corresponding to “TVSeries,” and media name “Seinfeld.” The database of informationresources may be stored in local storage, or may instead be stored in aremote location accessible via a communications network. The database ofinformation resources may be curated manually, such as by an expertspecializing in media; the database may be also be generated by acommunity of users, and may also be generated automatically by acrawler. An information resource may correspond to a website, an onlineforum, a message board, a discussion group, a social network, and an IPaddress of a different user, although other types of online sources maybe used as the information resource.

The media guidance application retrieves, from the database ofinformation resources, a target information resource associated with thetarget media asset type and target media asset name. For example, themedia guide application may retrieve, from a database, the name of atarget information resource that is associated with a media asset typecorresponding to “TV Series,” and media name “Seinfeld.” For example,the media guide application may determine that the information resourcename is “Seinfeld Forums,” a popular Seinfeld-oriented web site hostedby the website www.TV.com. Therefore, the media guidance application canlimit the search for the answer to the second natural language query toa highly specific and highly relevant resource that is most likely toproduce an answer that is relevant to the user.

In some embodiments, the media guidance application transmits, to thetarget information resource, the second natural language query using atarget information resource locator associated with the targetinformation resource. For example, the media guidance application maydetermine that in order to answer the second natural language query(e.g., “What's the name of the Seinfeld episode in which Kramer has ajob in an office?”), the media guidance application should transmit thesecond natural language query to a specific target information resource.For example, the media guidance application may determine that thesecond natural language query should be transmitted to a popular forum(e.g., “Seinfeld Forums”). The media guidance application may determinea target information resource locator associated with the targetinformation resource. For example, the database of information resourcesmay include an entry corresponding to the target information resource(e.g., “www.tv.com/seinfeld”), indicating the location to which themedia guidance application may transmit the second natural languagequery. The media guidance application may then use an HTTP post commandto transmit the second natural language query to the target informationresource (e.g., www.tv.com/seinfeld).

In some embodiments, the media guidance application retrieves andgenerates for display an answer to the second natural language queryfrom the target information resource. For example, upon detecting that auser of the “Seinology” website has responded to the question containedin the second natural language query, the media guidance application mayretrieve the answer and generate the answer for display so that the useris provided with an answer to the second natural language query.

In some embodiments, the media guidance application determines theassociation metric by computing a string distance metric between thefirst natural language query and the second natural language query. Astring distance metric may be calculated using any suitable approach,such as by utilizing a Levenshtein distance calculation,Damerau-Levenshtein distance calculation, Jaro-Winkler distancecalculation, and the like. In some examples, the string distance may becalculated for the natural language query as a whole. Because users mayintroduce a relatively small number of structural changes into theordering of keywords and into the keywords themselves in the secondnatural language query, as compared to the keywords in the first naturallanguage query, computing the string distance between the resultantstrings may be sufficient when determining whether the two naturallanguage queries are similar, and thus reflect the user's wish to searchfor the same question via both the first and second natural languagequeries. The string distance between the two natural language queriesmay be expressed as a value in the range of zero and one, for example, astring distance value of 0.90 may be indicative of a high level ofsimilarity between the two natural language queries.

The media guidance application computes the association metric bycalculating a ratio of the computed string distance metric with respectto at least one of the string length of the first natural language queryand the string length of the second natural language query. Two longnatural language queries (e.g., language queries with 30 or morecharacters) characterized by a low computed string distance (e.g., 0.2)may still correspond to the same question that the user wishes to query,because there are many more ways of restructuring the second naturallanguage query based on the first natural language query. By calculatinga ratio of the computer string distance with respect to the stringlength of one of the natural language queries, the media guidanceapplication may be able to better distinguish between pairs of naturallanguage queries that correspond to the same question, regardless of thelength of the second natural language query.

In some embodiments, the media guidance application determines theassociation metric by determining a first set of keywords present in thefirst natural language query. For example, by the process oftokenization, the media guidance application may break up the firstnatural language query into individual keywords to form a first set ofkeywords, which may include keywords such as “gets,” “Seinfeld,”“episode,” and “job.”

The media guidance application computes the association metric bydetermining a number of keywords in common between the first set ofkeywords and the second set of keywords. For example, if the first setof keywords contains the keywords “name,” “Seinfeld,” “episode,” and“job,” and the second set of keywords contains the keywords “name,”“Seinfeld,” “episode,” and “work,” the media guidance application maydetermine that three out of the four keywords in the first set arematched and thus are common to both the first and second naturallanguage queries. The media guidance application may then calculate aratio of the matched keywords with respect to the first set, the secondset, or both sets. For example, the media guidance application maycalculate a ratio between the number of matched keywords and the numberof keywords in the second set. In this example, the media guidanceapplication calculates the value of the ratio as 0.75. The mediaguidance application may then associate the value of the ratio with theassociation metric to indicate the similarity between the two naturallanguage queries.

In some embodiments, the media guidance application retrieves, from thedatabase of information resources, as the target information resourcelocator, an IP address of a second user. For example, other instances ofthe media guidance application may be accessible to other users whoconsume media. The media guidance application may keep a directory ofusers in local storage, or in remote storage, in order to select a usermost likely to answer the second natural language query. The mediaguidance application associated with the second user may receive anatural language query and generate for display the natural languagequery. The second user, upon receiving the natural language query, mayinput an answer to the natural language query, and the media guidanceapplication of the second user may then transmit the answer to the mediaguidance application of the first user.

In some embodiments, the media guidance application determines whetherthe second user is active by pinging the target information resource.Users may be subject to fluctuations in their availability, as well astheir willingness to interact with the media guidance application and toanswer queries. In order to guarantee that the second natural languagequery is answered promptly, the media guidance application may attemptto determine whether the second user is available or has been availablerecently. For example, using the IP address that the media guidanceapplication retrieved from the directory of users, the media guidanceapplication may use a ping command sent over the communications networkin order to determine that a device associated with the second user isactive, and therefore, the second natural language query is likely to beanswered by the second user.

In some embodiments, the media guidance application receives a messagefrom the target information resource, indicating that the second user isnot active. For example, the media guidance application associated withthe first user may ping the media guidance application associated withthe second user. The media guidance application associated with thesecond user may transmit a message, indicating that the second user haslast interacted with the media guidance application associated with thesecond user five days ago. Thus, the media guidance applicationassociated with the first user may determine that the second user isunlikely to respond to the request within a reasonable amount of time.

In some embodiments, the media guidance application selects a secondtarget resource associated with a third user in response to receivingthe message. For example, when the media guidance application detectsthat the second user is not active, the media guidance application mayselect a third user from the directory of users. Using an analogousprocess as discussed above in relation to the second user, the mediaguidance application may ping the third user and determine that thethird user is active (e.g., the third user may be watching televisionand may be actively interacting with the media guidance applicationassociated with the third user).

In some embodiments, the media guidance application retrieves, whenretrieving the target information resource, using the database ofinformation resources, a first potential target information resourceassociated with the target media asset type and target media asset name.For example, the media guide application may retrieve an informationresource that corresponds to “Seinfeld Forums.” Because the database ofinformation resources may contain multiple information resourcescorresponding to an identical media name and media type pairing, themedia guidance application may retrieve, using the database ofinformation resources, a second potential target information resourceassociated with the target media asset type and target media asset name.For example, the media guide application may retrieve an informationresource that corresponds to “Seinology,” which is a popular websitehosted by www.seinology.com. The media guidance application may selectthe information resource to transmit the natural language query to,based on calculating significance values, as will be further explainedbelow. Using the below-described approach, the media guidanceapplication may select a media guidance application that is most likelyto provide a prompt and correct answer to the user.

In some embodiments, the media guidance application calculates a firstsignificance value associated with the first potential targetinformation resource, wherein the first significance value predictswhether the second natural language query will be answered correctly andpromptly using the first potential target information resource. Forexample, the media guidance application may determine various factors,which will be described in more detail below, that affect whether anatural language query posted to the “Seinfeld Forums” will be answeredcorrectly and promptly.

In some embodiments, the media guidance application calculates a secondsignificance value associated with the second potential targetinformation resource, wherein the second significance value predictswhether the second natural language query will be answered correctly andpromptly using the second potential target information resource. Forexample, the media guidance application may determine factors affectingwhether a natural language query posted to the “Seinology” forum will beanswered correctly and promptly. The media guidance application may useanalogous methods to those described in relation to the firstsignificance value in order to calculate the second significance value.

In some embodiments, the media guidance application retrieves the firstpotential target information resource when the first significance valueis greater than the second significance value. For example, the mediaguidance application compares the first significance value to the secondsignificance value and determines that the first significance value isgreater than the second significance value, which reflects thelikelihood that a question posted to the first potential targetinformation resource will be answered promptly and correctly. In such away, the media guidance application maximizes the likelihood that thesecond natural language query will be answered promptly and accurately.

In some embodiments, the media guidance application determines whetherthe first significance value is greater than the second significancevalue. For example, the media guidance application may determine thesignificance values using a question-answer rate. In this case, themedia guidance application may determine that 80H of all questionssubmitted to the first potential target information resource (e.g.,“Seinfeld Forums”) are answered. Further, the media guidance applicationmay determine that only 40% of all questions submitted to the secondpotential target information resource (e.g., “Seinology”) are answered.The net effect of this is that the media guidance application is able toselect an information resource that is most likely to provide a correctand prompt answer to the user's natural language query.

In some embodiments, the media guidance application calculates the firstsignificance value based on one of a membership count associated withthe target information resource, a question-answer rate associated withthe target information resource, an average answer time associated withthe target information resource, and a user preference value associatedwith the target information resource.

In some embodiments, when the media guidance application calculates thefirst significance value based on the membership count associated withthe target information resource, a high membership count can beindicative of a higher significance value. For example, the mediaguidance application may set the significance value to a ratioreflecting a proportion of the membership count associated with thetarget information resource and a predetermined membership countassociated with a group of information resources known to host largecommunities of users who provide quick and prompt replies to queries.Additionally, a larger membership is more likely to include expert usersknowledgeable of specific topics that may be contained in a naturallanguage query.

In some embodiments, when the media guidance application calculates thefirst significance value based on a question-answer rate associated withthe target information resource, a high question-answer rate may beindicative of a high significance value. For example, the media guidanceapplication may set the significance value to a ratio reflecting aproportion of answered queries to the total number of queries posted. Insuch a way, the media guidance application may attach highersignificance to a robust forum in which users may actively monitor forunanswered questions, and a lower significance value to a stagnant forumin which users only occasionally respond to unanswered questions.

In some embodiments, when the media guidance application calculates thefirst significance value based on an average answer time associated withthe target information resource, a low average answer time rate may beindicative of a high significance value. For example, the media guidanceapplication may measure the average answer time by calculating theaverage amount of time between the posting of a natural language queryand the posting of an answer to the natural language query.

In some embodiments, the media guidance application calculates the firstsignificance value based on a user preference value associated with thetarget information resource. For example, the media guidance applicationmay analyze the user's web browsing history to determine a set ofinformation resources that are frequently visited by the user. The factthat a user accessed an information resource may be indicative of theuser trusting the information contained by that information resource.

In some embodiments, the media guidance application calculates the firstsignificance value based on one of a membership count associated withthe target information resource, a question-answer rate associated withthe target information resource, an average answer time associated withthe target information resource, and a user preference value associatedwith the target information resource.

In some embodiments, when the media guidance application calculates thefirst significance value based on the membership count associated withthe target information resource, a high membership count can beindicative of a higher significance value. For example, the mediaguidance application may set the significance value to a ratioreflecting a proportion of the membership count associated with thetarget information resource and a predetermined membership countassociated with a group of information resources known to host largecommunities of users who provide quick and prompt replies to queries.Additionally, a larger membership is more likely to include expert usersknowledgeable of specific topics that may be contained in a naturallanguage query.

In some embodiments, when the media guidance application calculates thefirst significance value based on a question-answer rate associated withthe target information resource, a high question-answer rate may beindicative of a high significance value. For example, the media guidanceapplication may set the significance value to a ratio reflecting aproportion of answered queries to the total number of queries posted. Insuch a way, the media guidance application may attach highersignificance to a robust forum in which users may actively monitor forunanswered questions, and a lower significance value to a stagnant forumin which users only occasionally respond to unanswered questions.

In some embodiments, when the media guidance application calculates thefirst significance value based on an average answer time associated withthe target information resource, a low average answer time rate may beindicative of a high significance value. For example, the media guidanceapplication may measure the average answer time by calculating theaverage amount of time between the posting of a natural language queryand the posting of an answer to the natural language query.

In some embodiments, the media guidance application calculates the firstsignificance value based on a user preference value associated with thetarget information resource. For example, the media guidance applicationmay analyze the user's web browsing history to determine a set ofinformation resources that are frequently visited by the user. The factthat a user accessed an information resource may be indicative of theuser trusting the information contained by that information resource.

In some embodiments, when transmitting the second natural languagequery, the media guidance application determines that the targetinformation resource requires authentication. For example, most internetforums, social networking sites, and community websites requireauthentication before a user is able to transmit and retrieveinformation stored on the site. Thus, the media guidance application maydetermine that, in order to transmit the second natural language query,the media guidance application must first supply credential informationto the target information resource.

In some embodiments, the media guidance application identifies anauthentication key associated with the target information resource. Forexample, should media guidance application determine that an AUTH_REQflag is set to “true,” the media guidance application may query theinformation resource database to determine the appropriate credentials.The media guidance application may retrieve a username and password,both of which represent the credentials necessary to authenticate theuser with the target information resource, from the database ofinformation resources or alternatively, the profile of the user.

In some embodiments, the media guidance application transmits theauthentication key using the target information resource locator. Forexample, the media guidance application may use the HTTP Secure protocol(HTTPS) in order to transmit the authentication key to the targetinformation resource locator (e.g., “www.tv.com/seinfeld”), should thetarget information resource support the Secure Sockets Layer protocol(SSL).

In some embodiments, the media guidance application may receive aconfirmatory message from the target information resource in response totransmitting the authentication key. For example, the media guidanceapplication may receive from the target information resource (e.g.,“www.tv.com/seinfeld”) an indication that the authentication key hasbeen received and the user is now authenticated. By receiving theconfirmatory message, the media guidance application may proceed totransmit the second natural language query without the risk of thetransmission failing.

In some embodiments, the media guidance application, in response toreceiving the confirmatory message, transmits, to the target informationresource, the second natural language query using the target informationresource locator associated with the target information resource. Asdescribed above in reference to HTTPS, the media guidance applicationmay use a POST command to transmit the second natural language query(e.g., “What's the name of the Seinfeld episode in which Kramer has ajob in an office?”). The media guidance application may transfer thesecond natural language query in a manner that may then be transferredvia the SSL protocol.

In some embodiments, the media guidance application identifies theauthentication key by searching a profile associated with the user toidentify a username and password combination associated with the targetinformation resource. For example, the media guidance application maydetermine a username and password combination required to authenticatethe user with the target information resource based on web browsercookies stored in local storage, which oftentimes contain credentials toinformation resources.

In some embodiments, when retrieving and generating for display theanswer to the second natural language query, the media guidanceapplication detects using the target information resource locator, asubmission of the answer to the second natural language query at thetarget information resource. For example, the media guidance applicationmay periodically poll the natural language query locator that the mediaguidance application previously received. In other examples, the mediaguidance application may receive a transmission of the answer for thesecond natural language query from the internet resource.

In some embodiments, the media guidance application, in response todetecting the submission of the answer, calculates a reliability metricof the answer. In some internet resources, such as internet forums andsocial networks, a correct answer to a natural language query is usuallydetermined after a number of users submit an answer to the secondnatural language query. A correct answer may be detected using variousmethods. In one example, users may utilize an “up-vote” function to giveweight to an answer that they consider to be correct, such that thenumber of up-votes associated with the answer determines the reliabilitymetric.

In some embodiments, the media guidance application determines whetherthe reliability metric meets a reliability threshold. As describedabove, the reliability metric may be calculated using such factors asthe number of up-votes associated with the answer, the total number ofqueries previously answered by a user associated with the answer, andthe number of replies posted to the answer. The media guidanceapplication may set thresholds for each factor when making thedetermination whether the answer is correct (i.e., whether thereliability metric meets a reliability threshold). For example, themedia guidance application may determine, based on an analysis performedon previously answered questions, that a question that has received twoup-votes has a fifty percent likelihood of being correct. Accordingly,when basing the reliability metric on up-votes, the media guidanceapplication may then set the reliability threshold to a value of two(e.g., an answer must receive at least two up-votes to be consideredcorrect).

In some embodiments, in response to determining that the reliabilitymetric meets or exceeds the reliability threshold, the media guidanceapplication retrieves the answer from the target information resource.For example, upon detecting that a user of the “Seinfeld Forums” websitehas responded to the question contained in the second natural languagequery, the media guidance application may retrieve the answer andgenerate the answer for display so that the user is provided with ananswer to the second natural language query.

In some embodiments, in response to determining that the reliabilitymetric meets or exceeds the reliability threshold, the media guidancegenerates for display the answer to the second natural language query.For example, the media guidance application may detect that a user ofthe “Seinfeld Forums” website provided an answer to the second naturallanguage query (e.g., “What's the name of the Seinfeld episode in whichKramer has a job in an office?”). Further, the media guidanceapplication may detect an answer (e.g., “Bizarro Jerry”) provided by auser (e.g., “SeinfeldGuru”), and that the answer is associated with ahigh reliability metric because the associated user has provided onehundred responses in the past. The media guidance application maycompare the reliability metric to a threshold (e.g., fifty answers), andmay retrieve the answer from the server. The media guidance applicationmay then generate the answer on the screen.

In some embodiments, the media guidance application may search thetarget information resource to determine whether the questioncorresponding to the second natural language query has previously beenanswered. For example, the media guidance application may crawl throughforum postings and identify a forum topic, the subject text of which issimilar to the keywords of the second natural language query. The mediaguidance application may use a process of determining an associationmetric between the second natural language query and each forum topic toidentify a topic that is most likely to be relevant to the user'squestion.

It should be noted, the systems and/or methods described above may beapplied to, or used in accordance with, other systems, methods and/orapparatuses.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects and advantages of the disclosure will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which like referencecharacters refer to like parts throughout, and in which:

FIG. 1 shows an illustrative example of a display screen that may beused to receive and provide a response to a first natural languagequery, in accordance with some embodiments of the disclosure;

FIG. 2 shows an illustrative example display screen that may be used toreceive a second natural language query, in accordance with someembodiments of the disclosure;

FIG. 3 shows an illustrative example of a display screen that may begenerated based on transmitting a second natural language query to aninformation resource, in accordance with some embodiments of thedisclosure;

FIG. 4 shows an illustrative example of a display screen that may beused to display the answer to the second natural language query, inaccordance with some embodiments of the disclosure;

FIG. 5 shows an illustrative example of a display screen generated bythe media guidance application in response to retrieving an answer tothe second natural language query, in accordance with some embodimentsof the disclosure;

FIG. 6 shows another illustrative example of a display screen that maybe used to display the answer to the second natural language query, inaccordance with some embodiments of the disclosure;

FIG. 7 shows an illustrative embodiment of a display screen that may beused to provide media guidance application listings and other mediaguidance information, in accordance with some embodiments of thedisclosure;

FIG. 8 shows another illustrative embodiment of a display screen thatmay be used to provide media guidance application listings, inaccordance with some embodiments of the disclosure;

FIG. 9 is a block diagram of an illustrative user equipment (UE) devicein accordance with some embodiments of the disclosure;

FIG. 10 is a block diagram of an illustrative media system in accordancewith some embodiments of the disclosure;

FIG. 11 is a flowchart of illustrative steps for identifying resourcesfor answering natural language queries, in accordance with someembodiments of the disclosure;

FIG. 12 is a flowchart of illustrative steps for determining anassociation metric between two natural language queries, in accordancewith some embodiments of the disclosure; and

FIG. 13 is a flowchart of illustrative steps for determining aninformation resource associated with a target record, in accordance withsome embodiments of the disclosure.

DETAILED DESCRIPTION

Systems and methods are described for a media guidance system that canidentify information resources for answering natural language queries. Auser may enter a natural language query into a search engine. Forexample, the user may wish to determine the name of a Seinfeld episodein which Kramer, who is a character in the show, is hired to work for acompany. A user may enter a natural language query such as “What's thename of the Seinfeld episode in which Kramer gets a job?” Should theuser enter a subsequent and similarly structured query, the mediaguidance application may determine that the search result provided inresponse to the first natural language query is not relevant to theuser. The media guidance application may then identify a relevantinformation resource that can answer the natural language query andtransmit the natural language query to the identified informationresource. For example, the media guidance application may determine thata specific online resource (e.g., “Seinfeld Forums,” a forumspecializing in Seinfeld-oriented trivia) is likely to provide an answerto the natural language query. The media guidance application may thenretrieve the answer from the information resource and present the answerto the user.

The term “natural language query,” as used herein, is a query thatexpresses a concept or question in a way typically spoken by users. Forexample, a natural language query may be expressed “What's the name ofthe Seinfeld episode in which Kramer gets a job?” In contrast, ananalogous query that is not expressed in a natural language format mayonly recite certain keywords important to concepts that are present inthe query. Such a query may be, for example “Seinfeld Kramer Job.” Anon-natural language query frequently does not give enough context tounderstand the question that the user is intending to ask. For example,in a non-natural language query “Seinfeld Kramer Job,” the user may beinquiring about the “Nose Job” Seinfeld episode, in which Kramerconvinces George's girlfriend to undergo rhinoplasty. However, the usermay equally likely be inquiring about the episode in which Kramer gets ajob at a corporation. Because non-natural language queries lack thecontext needed to determine the complex interplay between keywords, suchqueries are of limited utility when searching for anything but thesimplest of questions and ideas.

FIG. 1 shows an illustrative example of a display screen that may beused to receive and provide a response to a first natural languagequery, in accordance with some embodiments of the disclosure. In someembodiments of the disclosure, a media guidance application that isexecuted by control circuitry of user equipment 102 may receive a firstnatural language query from a user. The media guidance application,control circuitry, and user equipment 102 are all described furtherbelow with respect to FIGS. 4 and 5. For example, the media guidanceapplication may receive natural language query 106 from a user who isinterested in determining the name of a Seinfeld episode in which thecharacter Kramer is hired to work for a company. The media guidanceapplication may receive a natural language query corresponding to theuser's question by way of a user input entered via a user input device,such as a keyboard. For example, the media guidance application mayreceive the first natural language query 106 such as, “In which episodedid Kramer get a job?” by way of an on-screen keyboard. Alternatively,the media guidance application may receive the natural language queryvia a microphone when the user speaks the natural language query insteadof entering it using the keyboard. Upon receiving the first naturallanguage query, the media guidance application may receive a userselection of button 108, which may indicate that the user has completedentering the first natural language query 106 and that the user is readyto review results corresponding to the first natural language query.

In some embodiments, the media guidance application retrieves a firstsearch result for the first natural language query. For example, themedia guidance application may, in response to receiving the naturallanguage query 106 (e.g., “What's the name of the Seinfeld episode inwhich Kramer gets a job?”) from the user, submit the natural languagequery to a search engine. The media guidance application may thenreceive a result generated by the search engine. For example, the mediaguidance application may retrieve a first result 110 associated with theWikipedia entry for “Cosmo Kramer.” The media guidance application mayretrieve identifying information associated with the result (e.g.,“Cosmo Kramer . . . their relationship supposedly ended between thatepisode and The Nose Job”), as well as a hyperlink associated with theresult (e.g., “https://en.wikipedia.org/wiki/Cosmo-Kramer”) such thatthe media guidance application can provide an option to the user toretrieve the information page referenced by the hyperlink. The mediaguidance application may also retrieve the identifying information sothat the user is able to quickly determine whether a result answers hisor her natural language query. The media guidance application mayutilize a plug-in to both transmit the natural language query to asearch engine (e.g., the Google search engine), and receive the resultfrom the search engine, in such a way that the process of entering thenatural language query and receiving the results appears to be seamlessto the user.

In some embodiments, the media guidance application generates fordisplay the first search result. For example, in response to receivingfirst natural language query 106 (e.g., “What's the name of the Seinfeldepisode in which Kramer gets a job?”) from the user, the media guidanceapplication may generate for display, on touch screen 104, first result110. For example, the media guidance application may generate fordisplay identifying information associated with the result correspondingto the Wikipedia entry about Cosmo Kramer. The media guidanceapplication may include a hyperlink associated with the result, and mayretrieve the information page associated with the result so that theuser is able to verify whether the result is relevant to the naturallanguage query. The media guidance application may retrieve secondresult 112 and third result 114 in a ranked manner such that the resultsthat are more likely to be relevant to the user are displayed first.

FIG. 2 shows an illustrative example display screen that may be used toreceive a second natural language query, in accordance with someembodiments of the disclosure. In some embodiments, the media guidanceapplication receives second natural language query 202 from the user.For example, the media guidance application may receive second naturallanguage query 202 when the user does not consider the results providedin response to the first natural language query to be relevant. The usermay attempt to restructure first natural language query 106 in an orderto procure more relevant results. For example, the user may find thatthe result corresponding to first natural language query 106 (e.g.,“What's the name of the Seinfeld episode in which Kramer gets a job?”)does not contain a relevant result. In such a case, the media guidanceapplication may receive second natural language query 202 entered by theuser, such as “What's the name of the Seinfeld episode in which Kramerhas a job in an office.” The media guidance application may then repeatthe process of retrieving and generating for display a search resultcorresponding to second natural language query 202. For example, uponreceiving a user selection of button 108, indicating that the user hasfinished entering second natural language query 202, the media guidanceapplication may retrieve and generate for display results 204, 202, and208.

In some embodiments, the media guidance application determines anassociation metric relating to a similarity between first naturallanguage query 106 and second natural language query 202. As usedherein, an “association metric” is a measure by which the similaritybetween any two text strings, such as two natural language queries, maybe established. The association metric may be a numeric figure between arange. The media guidance application may compute a string distancemetric between first natural language query 106 and second naturallanguage query 202 to determine whether the user is attempting tounsuccessfully generate a relevant result for the same question usingboth the first and second natural language queries. As used herein, a“string distance metric” is a calculated quantity that determineswhether two text strings, such as two natural language queries, aresimilar. For example, the media guidance application may determine thatfirst natural language query 106 and second natural language query 202share five words that are common to both natural language queries. Themedia guidance application may then set the association metric to theresult of the calculation of dividing the number of words common to bothnatural language queries by the number of words contained in the secondnatural language query. For example, the media guidance application maydetermine that second natural language 202 query contains sixteen words.The media guidance application may then set the association metric tothe result of dividing the number of words common to both naturallanguage queries (e.g., six words) by the number of words in the secondnatural language query (e.g., sixteen words). In this example, theresult of the calculation is 0.375, and the media guidance applicationmay set the association metric to this value.

In some embodiments, the media guidance application determines theassociation metric by computing a string distance metric between firstnatural language query 106 and second natural language query 202. Astring distance metric may be calculated using any suitable approach,such as by utilizing a Levenshtein distance calculation,Damerau-Levenshtein distance calculation, Jaro-Winkler distancecalculation, and the like. In some examples, the string distance may becalculated for each of the totality of the first and second naturallanguage queries 106 and 202. For example, when first natural languagequery 106 corresponds to “What's the name of the Seinfeld episode inwhich Kramer gets a job?” and second natural language query 202corresponds to “What's the name of the Seinfeld episode in which Kramerhas a job in an office,” the media guidance application may firstpre-process the natural language queries by removing spaces, formatting,and insignificant keywords in order to remove characters that are notrelevant to comparing two keywords for the purpose of determining theirintended meaning. By this process, articles (e.g., “a” and “the”) andpunctuation marks (e.g., commas and contractions) are removed from thenatural language queries, because the user is likely to arbitrarilyenter arbitrary punctuation in one natural language query but not theother. In this example, the media guidance application may reduce firstnatural language query 106 to“whatsnameofseinfeldepisodeinwhichkramergetsjob” after processing thekeywords present in first natural language query 106. Likewise, themedia guidance application may reduce second natural language query 202to “whatsnameofseinfeldepisodeinwhichkramkerhasjobinoffice” afterprocessing the keywords in the natural language query. Because users mayintroduce a relatively small number of structural changes into theordering of keywords and into the keywords themselves in second naturallanguage query 202, as compared to the keywords in first naturallanguage query 106, computing the string distance between the resultantstrings may be sufficient when determining whether the two naturallanguage queries are similar, and thus reflect the user's wish to searchfor the same question in both the first and second natural languagequeries. The string distance between the two natural language queriesmay be expressed as a value in the range of zero and one, for example, astring distance value of 0.90 may indicate a high level of similaritybetween the two natural language queries.

In some embodiments, the media guidance application computes theassociation metric by calculating a ratio of the computed stringdistance metric with respect to at least one of the string length offirst natural language query 106 and the string length of second naturallanguage query 202. Two long natural language queries (e.g., languagequeries with 30 or more characters) that are characterized by a lowcomputed string distance (e.g., 0.3) may still correspond to the samequestion, because there are many more ways of restructuring secondnatural language query 202 based on first natural language query 106.Similarly, two short natural language queries (e.g., language queriesless than 30 characters) characterized by a high computed stringdistance (e.g., 0.8) may not necessarily correspond to the same questionbecause there are many fewer ways of restructuring second naturallanguage query 202 based on first natural language query 106, and even asmall restructuring may be indicative of the user changing the intendedquestion of the natural language query. Thus, by calculating a ratio ofthe computer string distance with respect to the string length of one ofthe natural language queries, the media guidance application may be ableto better identify pairs of natural language queries that correspond tothe same question.

In some embodiments, the media guidance application determines theassociation metric by determining a first set of keywords present infirst natural language query 106. For example, by the process oftokenization, the media guidance application may break up first naturallanguage query 106 into individual keywords to form a first set ofkeywords, which may include keywords such as “gets,” “Seinfeld,”“episode,” and “job.” Similarly, the media guidance application maydetermine a second set of keywords present in second natural languagequery 202 by breaking up second natural language query 202 intoindividual keywords to form a second set of keywords, which may includekeywords such as “has,” “Seinfeld,” “episode,” and “work.” The mediaguidance application may compute the association metric by determining anumber of keywords in common between the first set of keywords and thesecond set of keywords. The media guidance application may process eachkeyword to maximize the probability that non-identical keywords relatingto the same question in both queries are successfully matched. Forexample, the media guidance application may ensure that punctuation isremoved from each keyword, because the user may relate to the same wordby inputting keywords that include arbitrary punctuation structures. Insome examples, the media guidance application may remove keywords of lowsignificance such as articles (e.g., “a” and “the).

In some embodiments, the media guidance application may process keywordsand identify the parts of speech (e.g., nouns, verbs, adjectives, etc.)to which each keyword belongs to. Further, the media guidanceapplication may process each keyword relating to an identified part ofspeech such that the keyword appears in the base or infinitive case. Forexample, the media guidance application may detect the keywords “gets”and “got” in the set of keywords. Using a dictionary, the media guidanceapplication may determine that both keywords relate to the infinitiveword form “have,” and may replace both keywords with the infinitiveform. In such a way, media guidance application may ensure that arephrasing of the same word in both queries can be detected andconsidered when the media guidance application calculates theassociation metric.

In some embodiments, the media guidance application computes theassociation metric by determining a number of keywords in common betweenthe first set of keywords and the second set of keywords. For example,if the first set of keywords contains the keywords “name,” “Seinfeld,”“episode,” and “job,” and the second set of keywords contains thekeywords “name,” “Seinfeld,” “episode,” and “work,” the media guidanceapplication may determine that three out of the four keywords in thefirst set are matched and are thus common to both the first and secondnatural language queries. The media guidance application may thencalculate a ratio of the matched keywords with respect to the first set,the second set, or both sets. For example, the media guidanceapplication may calculate a ratio between the number of matched keywordsand the number of keywords in the second set. In this example, the mediaguidance application calculates the value of the ratio as 0.75. Themedia guidance application may then associate the value of the ratiowith the association metric to indicate the similarity between the twonatural language strings.

In some examples, the media guidance application searches a thesaurus todetermine a match between any unmatched keywords between the first setand the second set of keywords. For example, if the media guidanceapplication does not match the keyword “job” in the first set to any ofthe unmatched keywords in the second set, the media guidance applicationmay search a thesaurus to determine synonyms for the unmatched keyword,such as “work,” “profession,” and “role,” and attempt to match thesynonyms of the keyword from the first set to any unmatched keywords ofthe second set. By doing so, the media guidance application may ensurethat any rephrasing of words performed by the user in second naturallanguage query 202 is correlated to the keywords in first naturallanguage query 106. For example, because the second set contains thekeyword “work,” and the set of synonyms for the keyword “job” from thefirst set also contains the keyword “work,” media guidance applicationmay determine that in spite of semantic dissimilarity between keywords“work” and “job,” both keywords relate to the same concept. The mediaguidance application may thus determine that the “work” and “job”keywords match, and may adjust the number of keywords in common betweenthe first and second set of keywords.

In some embodiments, the media guidance application determines whetherthe association metric meets or exceeds a threshold. For example, themedia guidance application may retrieve a threshold stored in a storagedevice, and compare the threshold to the association metric. The mediaguidance application may determine a threshold in a number of ways. Thethreshold may be based on the output of a function, the inputs of whichmay include any characteristics of first natural language query 106 andsecond natural language query 202, such as the character length of oneor both queries or the number of keywords in one or both queries. Thefunction may relate the inputs to a threshold such that an associationmetric that meets or exceeds the threshold is more likely than not toindicate that first natural language query 106 and second naturallanguage query 202 relate to the same question. The function may map theinputs to a threshold such that an association metric that meets orexceeds the threshold is more likely than not to indicate that firstnatural language query 106 and second natural language query 202 relateto the same question. In one example, the threshold may be determinedthrough crowdsourcing, based on the behavior of other users, each ofwhich may be utilizing a separate instance of the media guidanceapplication for inputting queries. In some examples, the threshold maybe static. In other examples, the media guidance application may providean option for the user to define the threshold. The media guidanceapplication may then store the user-defined threshold in storage, suchas in storage 908, further described in relation to FIG. 9, andadditionally, the media guidance application may associate the thresholdwith the user by storing the threshold in a profile associated with theuser.

In some embodiments, the media guidance application, upon determiningthat the association metric meets or exceeds the threshold, generatesfor display message 210, indicating that media guidance application isable to identify an information resource that can answer the secondnatural language query. Should a user not be interested in having themedia guidance application identify an information resource foranswering the second natural language query, the media guidanceapplication may receive a user input cancelling any further processingwith respect to the second natural language query. Otherwise, the mediaguidance application can automatically identify a relevant informationresource and transmit the query to that resource.

In some embodiments, the media guidance application, in response todetermining that the association metric meets or exceeds the threshold,performs a number of functions to retrieve an answer to the naturallanguage query. In some embodiments, the media guidance application mayidentify a target media asset type corresponding to second naturallanguage query 202, in response to determining that the associationmetric meets or exceeds the threshold. For example, the media guidanceapplication may determine, by performing an analysis of the keywordscorresponding to second natural language query 202 “What's the name ofthe Seinfeld episode in which Kramer has a job in an office,” thatsecond natural language query 202 contains information about an episode.Further, the media guidance application may establish that an episodeshould be associated with a “TV Series” media type. The media guidanceapplication may store, in storage 908, a directory of media asset types.For example, the media guidance application may associate, in thedirectory of media asset types, keywords that correspond to eachrespective asset type. For example, the media guidance application mayassociate a “TV Series” media type with keywords such as “episode,”“season,” “finale,” “pilot,” and “show.” Meanwhile, the media guidanceapplication may correspond a “music” media type with keywords such as“song,” “album,” “artist,” and “single.”

In some examples, media guidance application attempts to identify eachkeyword of second natural language query 202, in order to increase thelikelihood that the media guidance application identifies the mostrelevant media asset type, even if some keywords correspond to multiplemedia asset types. For example, in the natural language query “Who playsLester in Fargo?” the keyword “Fargo” may relate to both the “Movies”media asset type, because Fargo is a 1996 film, as well as to the “TVSeries” media asset type, because “Fargo” is a television show thatpremiered in 2014. The media guidance application may analyze otherkeywords present in the second natural guidance query to resolve theambiguity. For example, the media guidance application may determinethat the keyword “Lester” in second natural language query 202 relatesto “TV Series,” but does not relate to “Movies,” because the keyword“Lester” may relate to a main character in the “Fargo” TV Series, butmay not relate to any keywords associated with media asset type“Movies.” Thus, the media guidance application is able to moreeffectively determine the media asset type relevant to second naturallanguage query 202 by analyzing multiple keywords.

In some embodiments, the media guidance application identifies a targetmedia name corresponding to second natural language query 202, inresponse to determining that the association metric meets or exceeds thethreshold. In one example, after the media guidance applicationdetermines that the media type corresponding to second natural languagequery 202 is “TV Series,” the media guidance application may identifymedia records in a directory of media asset names, stored in storage908, that correspond to the “Kramer” keyword of second natural languagequery 202. For example, the media guidance application may identify thatthe keyword “Kramer” corresponds to the TV Series show “Seinfeld.” Themedia guidance application may determine the media asset name usingvarious methods. For example, the media guidance application can store,in the directory of media asset names, a number of correspondingkeywords of different attributes, such as “actors,” “character names,”“episode names,” “host,” and the like. In one example, the media assetname “Seinfeld” may be correlated to the keyword “Kramer,” which is ofthe “character name” attribute. In such a way, the media guidanceapplication may effectively organize and maintain keywords in thedirectory of media asset names.

In some examples, the media guidance application determines that akeyword is associated with multiple media asset names of the same mediatype. For example, in the natural language query “In which episode Jerrygets a new couch?”, the media guidance application may associate thekeyword “Jerry” with both the media asset name “Seinfeld,” via the“actor” attribute, as discussed above, as well as with media asset name“Jerry Springer Show,” via the “host” attribute, which may correspond toJerry Springer, the host of the show the “Jerry Springer Show.” In sucha case, the media guidance application may attempt to identify otherkeywords in the natural language query that would be characteristic ofeither the “Seinfeld” or the “Jerry Springer Show.” When the mediaguidance application is unable to make this determination, because, forexample, no other keywords present in the natural language query aredistinctly related to a media asset name, the media guidance applicationmay use other methods of determining the media asset name. For example,the media guidance application may query the profile associated with theuser, which may be stored in storage, such as the storage depicted inFIG. 9, in order to determine a user viewing history. Should the mediaguidance application determine that the user has been binge watchingepisodes of “Seinfeld,” but has not viewed any episodes of “The JerrySpringer Show,” the media guidance application may correctly infer thatsecond natural language query 202 corresponds to the “Seinfeld” mediaasset name. Should the media guidance application not be able todetermine whether the user watches media asset “Seinfeld” morefrequently than “The Jerry Springer Show,” the media guidanceapplication may use other methods, such as determining the popularity ofeach media asset. In this case “Seinfeld” is significantly more popularthan “The Jerry Springer Show” and thus the media guidance applicationmay identify the media asset name corresponding to second naturallanguage query 202 as “Seinfeld.” The media guidance application maymaintain a list of statistics, such as popularity, air date, andratings, in the media asset name directory, in order to facilitate thecorrect identification of media asset names corresponding with secondnatural language query 202.

In some embodiments, the media guidance application accesses a databaseof information resources, wherein each information resource isassociated with a media asset type, a media name, and an informationresource locator. As used herein, a “locator” refers to any informationthat may be used to locate a specific resource. For example, a URLaddress and an IP address may be used to locate a specific resource.Accordingly, in one example, the media guide application may determinethat an information resource is associated with a media asset typecorresponding to “TV Series,” and media name “Seinfeld.” The database ofinformation resources may be stored in local storage, or may instead bestored in a remote location accessible via a communications network. Thedatabase of information resources may be curated manually, such as by anexpert specializing in media, the database may be also be generated by acommunity of users, and may also be generated automatically by acrawler. An information resource may correspond to a website, an onlineforum, a message board, a discussion group, a social network, and an IPaddress of a different user, although other types of online sources maybe used as the information resource. The media guidance application mayintegrate the previously described directories of media asset types, andmedia asset names with the database of information resources, such thatall information resides in one database. Alternatively, the directory ofmedia asset types and media asset names may reside in separate storage,but may reference entries in the information resource database usingkeys, links, or other references. The database of information resourcesmay also contain an indicator, for each information resource, as towhether authentication is required. Further, the database may alsocontain the authentication information, including passwords andusernames. By identifying and accessing an information resource, themedia guidance application is able to locate information and/or userswho are most likely to answer the user's query, which conventionalsearch engines are not able to perform.

In some embodiments, the media guidance application retrieves, from thedatabase of information resources, a target information resourceassociated with the target media asset type and target media asset name.For example, the media guide application may retrieve, from a database,the name of a target information resource that is associated with amedia asset type corresponding to “TV Series,” and media name“Seinfeld.” For example, the media guide application may determine thatthe information resource name is “Seinfeld Forums,” a popularSeinfeld-oriented web site hosted by the website www.TV.com.

In some embodiments the media guidance application retrieves, whenretrieving the target information resource, using the database ofinformation resources, a first potential target information resourceassociated with the target media asset type and target media asset name.For example, the media guide application may retrieve an informationresource that corresponds to “Seinfeld Forums.” Because the database ofinformation resources may contain multiple information resourcescorresponding to a given media name and media type pairing, the mediaguidance application may retrieve, using the database of informationresources, a second potential target information resource associatedwith the target media asset type and target media asset name. Forexample, the media guide application may retrieve an informationresource that corresponds to “Seinology,” which is a popular websitehosted by www.seinology.com. The media guidance application may selectthe information resource to transmit the natural language query to,based on calculating significance values, as will be further explainedbelow. Using the below-described approach, the media guidanceapplication may select a media guidance application that is most likelyto provide a prompt and correct answer to the user.

In some embodiments, the media guidance application calculates a firstsignificance value associated with the first potential targetinformation resource, wherein the first significance value predictswhether second natural language query 202 will be answered correctly andpromptly using the first potential target information resource. As usedherein, a “significance value” is any quantity that reflects thelikelihood that an answer submitted to an information resource will beanswered promptly and correctly. For example, the media guidanceapplication may determine factors affecting whether a natural languagequery posted to the “Seinfeld Forums” will be answered correctly andpromptly.

In some embodiments, the media guidance application calculates the firstsignificance value based on at least one of a membership countassociated with the target information resource, a question-answer rateassociated with the target information resource, an average answer timeassociated with the target information resource, and a user preferencevalue associated with the target information resource.

When the media guidance application calculates the first significancevalue based on the membership count associated with the targetinformation resource, a high membership count can be indicative of ahigh significance value. For example, the media guidance application mayset the significance value to a ratio reflecting a proportion of themembership count associated with the target information resource and apredetermined membership count associated with a group of informationresources known to host large communities of users who provide quick andprompt replies to queries. Additionally, a larger membership is morelikely to include expert users knowledgeable of specific topics that maybe contained in a natural language query, and thus an answer to anatural language query obtained from such a source is more likely to befactually correct.

In some embodiments, the media guidance application considers only anactive membership count, because many membership accounts may becomedormant over time. The media guidance application may make thisdetermination by counting the number of distinct usernames associatedwith replies that had been posted within a predetermined period (e.g.,the past two months).

When the media guidance application calculates the first significancevalue based on a question-answer rate associated with the targetinformation resource, a high question-answer rate may be indicative of ahigh significance value. For example, the media guidance application mayset the significance value to a ratio reflecting a proportion ofanswered queries to the total number of queries posted. In such a way,the media guidance application may attach higher significance to arobust forum in which users may actively monitor for new questions, anda lower significance value to a stagnant forum in which users onlyoccasionally respond to new questions.

In some embodiments, the media guidance application considers only aquestion-answer rate associated with the target information resource forqueries that had been posted within a predetermined period (e.g., thepast two months), reflecting the amount of answer activity taking place.In such a way, the media guidance application is able to distinguishbetween presently active internet resources and internet resources thathad been active at one point, but are no longer active.

When the media guidance application calculates the first significancevalue based on an average answer time associated with the targetinformation resource, a low average answer time rate may be reflected ina high significance value. For example, media guidance application maymeasure the average answer time by calculating the average amount oftime between the posting of a natural language query and the posting ofan answer to the natural language query. In some examples, the mediaguidance application may only consider those answers that weredetermined to be correct (e.g., by up-voting answers) by the users ofthe internet resource, because the very first answer posted in responseto a natural language query may not necessarily be the correct answer.By calculating the first significance value using the average answertime associated with the target information resource, the media guidanceapplication is able to identify those information resources in whichqueries are answered promptly, thus increasing the likelihood that ananswer to the second natural language can be promptly provided to theuser.

In some embodiments, the media guidance application calculates the firstsignificance value based on a user preference value associated with thetarget information resource. For example, the media guidance applicationmay analyze the user's web browsing history to determine a set ofinformation resources that are frequently visited by the user. The factthat a user had previously accessed an information resource may beindicative of the user trusting that information contained in thatinformation resource. In some examples, the media guidance applicationmay search the profile of the user to determine internet resources thatthe user has marked as favorites.

It should be noted that media guidance application may use one or moremeasures discussed above when calculating the first significance value.The media guidance application may also use other applicable measures tocalculate the significance value.

In some embodiments, the media guidance application calculates a secondsignificance value associated with the second potential targetinformation resource, wherein the second significance value predictswhether second natural language query 202 will be answered correctly andpromptly using the second potential target information resource. Forexample, the media guidance application may determine factors affectingwhether a natural language query posted to the “Seinology” forum will beanswered correctly and promptly. The media guidance application may useanalogous methods to those described in relation to the firstsignificance value in order to calculate the second significance value.

In some embodiments, the media guidance application determines whetherthe first significance value is greater than the second significancevalue. For example, the media guidance application may determine thesignificance values using a question-answer rate. In this case, themedia guidance application may determine that 80% of the questionssubmitted to the first potential target information resource (e.g.,“Seinfeld Forums”) are answered. Further, the media guidance applicationmay determine that only 40% of the questions submitted to the secondpotential target information resource (e.g., “Seinology”) are answered.The net effect of this is that the media guidance application is able toselect an information resource that is most likely to provide a correctand prompt answer to the user's natural language query.

In some embodiments, the media guidance application retrieves the firstpotential target information resource when the first significance valueis greater than the second significance value. For example, the mediaguidance application then compares the first significance value to thesecond significance value and determines that the first significancevalue is greater than the second significance value, which reflects thelikelihood that a question posted to the first potential targetinformation resource will be answered more promptly and correctly thanif posted in the information resource associated with the secondsignificance value.

In some embodiments, the media guidance application transmits, to thetarget information resource, second natural language query 202 using atarget information resource locator associated with the targetinformation resource. For example, the media guidance application maydetermine that in order to answer second natural language query 202(e.g., “What's the name of the Seinfeld episode in which Kramer has ajob in an office?”), the media guidance application should transmitsecond natural language query 202 to a specific target informationresource. For example, the media guidance application may determine thatsecond natural language query 202 should be transmitted to a popularforum (e.g., “Seinfeld Forums”). The media guidance application maydetermine a target information resource locator associated with thetarget information resource. For example, the database of informationresources may include an entry corresponding the target informationresource (e.g., “www.tv.com/seinfeld”) indicating the location to whichthe media guidance application may transmit second natural languagequery 202. The media guidance application may then use an HTTP postcommand to transmit second natural language query 202 to the targetinformation resource (e.g., www.tv.com/seinfeld).

The media guidance application may transmit second natural languagequery 202 in a variety of manners. Because each individual informationresource is likely to have specific requirements for transmitting anatural language query, the media guidance application may maintaincustomized plugins for each information resource. For example, somepopular internet websites have an associated application programinterface (API) that enables users to programmatically manipulatecontent and data on the website. Some websites allow for HypertextTransfer Protocol (HTTP) post command to be sent via a script.Accordingly, the media guidance application may utilize a script,conformed to the requirements of an individual website, in order totransmit second natural language query 202.

In some embodiments, the media guidance application retrieves, from thedatabase of information resources, as the target information resourcelocator, an IP address of a second user. For example, an instance of themedia guidance application may be accessible to other users who consumemedia. The media guidance application may keep a directory of users inlocal storage, or in remote storage, in order to select a user mostlikely to answer second natural language query 202. The media guidanceapplication associated with a second user may receive a natural languagequery and generate for display the natural language query. The seconduser, upon receiving the natural language query, may input an answer tothe natural language query, the media guidance application of the seconduser may then transmit the answer to the media guidance application ofthe first user. Each entry in the directory of users may include anInternet Protocol (IP) address using which the media guidanceapplication may communicate with the media guidance application of aremote user. Additionally, each entry of the directory may include thename of the corresponding user, geographic location information, topicsof expertise, and various measures of the corresponding user's mediaconsumption behavior and query answering metrics. Examples of measuresof media consumption may include the number of hours watched per a givenmedia asset or group of media assets. In one example, a user who haswatched and rewatched every Seinfeld episode may have an associationmetric of “Seinfeld” consumption set as 132 hours. The media guidanceapplication may use such metrics to identify those users who may beexperts in certain media asset types or specific media assets of aparticular name to ensure that a correct answer for a natural languagequery is obtained. In another example, the media application may collectinterest and areas of expertise directly from users. For example, themedia guidance application may enable users to select specific mediaassets in which users are most interested in, or ones the users considerthemselves to be experts in. In one example, the media guidanceapplication may receive input from the user indicating that the userconsiders himself or herself an expert in the “Seinfeld” series and“Curb Your Enthusiasm” series. Using this information allows the mediaguidance application to determine users who may not only be experts inspecific media-related subject areas, but also users who may participatein discussions related to these subject areas, and may be likely to bewilling and able to answer queries related to these subject areas.

In some embodiments, the media guidance application determines whetherthe second user is active by pinging the target information resource. Asused herein, “pinging” refers to the process of querying a server orother computer on communications network 1014. Users may be subject tofluctuations in their availability and willingness to interact with themedia guidance application and to answer queries. In order to guaranteethat second natural language query 202 is answered promptly, the mediaguidance application may attempt to determine whether the second user isavailable or has been available recently. For example, using the IPaddress that the media guidance application retrieved from the directoryof users, the media guidance application may use a ping command sentover the communications network in order to determine whether a deviceassociated with the second user is active. Should the media guidanceapplication be implemented on user television equipment 1002 of thesecond user, a simple ping command may be insufficient in determiningwhether the second user is active, because the set-top box may beconstantly connected to the internet, even with the user not beingpresent. In such a case, the media guidance application may transmit aping message to the media guidance application associated with thesecond user in such a way that the media guidance application associatedwith the second user responds with a message relating to the seconduser's availability, such as the last time at which the second userinteracted with the media guidance application associated with thesecond user.

In some embodiments, the media guidance application receives a messagefrom the target information resource indicating that the second user isnot active. For example, the media guidance application associated withthe first user may ping the media guidance application associated withthe second user. The media guidance application associated with thesecond user may transmit a message, indicating that the second user hadlast interacted with the media guidance application associated with thesecond user five days ago. Thus, the media guidance applicationassociated with the first user may determine that the second user isunlikely to respond to the request within a reasonable amount of time.The media guidance application, may, for example, use statisticalanalysis of user interactions with media guidance applications todetermine that, for example, a user who has not interacted with a mediaguidance application within a certain amount of time (e.g., five days)has a certain likelihood of responding in the next one day (e.g., 15%chance) of responding. Thus, the media guidance application maydetermine that the user is not active and is not likely to be active inthe foreseeable future so as to answer corresponding to second naturallanguage query 202 within a time period that may be acceptable to theuser who submitted the natural language query (e.g., a time period ofone day). The amount of time that is acceptable to the user may be setmanually by the user and stored in the profile of the user in storage908.

In some embodiments, the media guidance application selects a secondtarget resource associated with a third user in response to receivingthe message. For example, when the media guidance application detectsthat the second user is not active, the media guidance application mayselect a third user from the directory of users. Using an analogousprocess as discussed above in relation to the second user, the mediaguidance application may ping the third user and determine that thethird user is active (e.g., the third user may be watching televisionand may be actively interacting with the media guidance applicationassociated with the third user).

In some embodiments, the media guidance application transmits, to thesecond target resource, second natural language query 202 using a secondtarget information resource locator associated with the second targetresource. For example, the media guidance application may transmitsecond natural language query 202, “What's the name of the Seinfeldepisode in which Kramer has a job in an office?” The media guidanceapplication may also transmit its own IP address, so that the mediaguidance application associated with the third user is able to push amessage with the answer to the natural language query to the userrequesting the answer.

In some embodiments, when transmitting second natural language query202, the media guidance application determines that the targetinformation resource requires authentication. For example, most internetforums, social networking sites, and community websites requireauthentication before the user is able to transmit and retrieveinformation stored on the site. Thus, the media guidance application maydetermine that, in order to transmit second natural language query 202,the media guidance application must first supply credential informationto the target information resource. The media guidance application maydetermine this based on information contained in the database ofinformation resources. For example, the media guidance application maydetermine that the information resource corresponding to a popular forum(e.g., “Seinfeld Forums”) requires authentication by determining whetheran AUTH_REQ flag in the information database has been set.

In some embodiments, the media guidance application identifies anauthentication key associated with the target information resource. Asused herein, “an identification key” is any data, sent overcommunications network 1018, that allows one entity to be authenticationwith a second entity. For example, should media guidance applicationdetermine that the AUTH_REQ flag is set to “true,” the media guidanceapplication may query the information resource database to determine theappropriate credentials. The media guidance application may retrieve ausername and password from the database of information resources or theprofile of the user. The credentials need not be directly associatedwith the user. Because the user is unlikely to have personal credentialsto more than a dozen information resources, the media guidanceapplication may store and utilize generic credential information thatmay be used by a group of users. The media guidance application may thensend an authentication key containing both the username and password insuch a way that when the media guidance application transmits theauthentication key to the target information resource, the targetinformation resource may authenticate the user and enable the mediaguidance application to transmit and retrieve information, such asqueries and answers.

In some embodiments, the media guidance application identifies theauthentication key by searching a profile associated with the user toidentify a username and password combination associated with the targetinformation resource. For example, the media guidance application maydetermine a username and password combination required to authenticatethe user with the target information resource based on web browsercookies, which oftentimes contain credentials to information resources.

In some embodiments, the media guidance application transmits theauthentication key using the target information resource locator. Forexample, the media guidance application may use the HTTP Secure protocol(HTTPS) in order to transmit the authentication key to the targetinformation resource locator (e.g., “www.tv.com/seinfeld”), should thetarget information resource support the Secure Sockets Layer protocol(SSL).

In some embodiments, the media guidance application may receive aconfirmatory message from the target information resource in response totransmitting the authentication key. For example, the media guidanceapplication may receive from the target information resource (e.g.,“www.tv.com/seinfeld”) an indication that the authentication key hasbeen received and the user is now authenticated. By receiving theconfirmatory message, the media guidance application may proceed totransmit second natural language query 202 without risk of thetransmission failing. Additionally, when the media guidance applicationdoes not receive a confirmatory message, the media guidance applicationmay attempt to resolve the issue. In one example, the media guidanceapplication may, in response to determining that the media guidanceapplication did not receive a confirmatory message within apredetermined amount of time (e.g., one second), select an alternativeinformation resource. In a second example, the media guidance mayinstead generate a message on display indicating that the user'sauthentication information was not accepted. The media guidanceapplication may further provide the user with the opportunity to updatethe credential information, and may also provide a link referencing thepassword reset page associated with the target information resource.

In some embodiments, the media guidance application, in response toreceiving the confirmatory message, transmits, to the target informationresource, second natural language query 202 using the target informationresource locator associated with the target information resource. Asdescribed above in reference to HTTPS, the media guidance applicationmay use a POST command to transmit second natural language query 202(e.g., “What's the name of the Seinfeld episode in which Kramer has ajob in an office?”). The media guidance application may process secondnatural language query 202 so that the second natural language query 202may then be transferred via the SSL protocol.

FIG. 3 shows an illustrative example of a display screen that may begenerated based on transmitting a second natural language query to aninformation resource, in accordance with some embodiments of thedisclosure. For example, the screen may include second natural languagequery 202 listed under a question entry 302. The media guidanceapplication may display information relevant to the user, such as thetext of second natural language query 302, the number of responses tothe question corresponding to the second natural language query, thedate that the second natural language query was transmitted, and thelike. For context, the media guidance application may display otherquestions associated with the information resource, such as questionentry 304.

In some embodiments, the media guidance application may receive anatural language query locator from the target information resource oncethe second natural language has been posted. For example, the mediaguidance application may receive a URL (e.g.,http://www.tv.com/shows/seinfeld/forums/kramer-gets-job-233-33931/)corresponding to the location at which second natural language query 202is posted. The media guidance application may store the locator in theuser profile, or in an entry associated with the target informationresource locator in the database of information resources, so as to beable to poll it later.

In some embodiments, the media guidance may search the targetinformation resource to determine whether the questions corresponding tosecond natural language query 202 has previously been answered. Forexample, the media guidance application may crawl through forum postingsand identify a forum topic, the subject text of which is similar tosecond natural language query 202. The media guidance application mayuse a process of determining an association metric between secondnatural language query 202 and each forum topic to identify a topic thatis most likely to be relevant to the user's question, using the methodsdescribed above in relation to the comparison of first natural languagequery 106 with second natural language query 202.

In some embodiments, the media guidance application retrieves andgenerates for display an answer to second natural language query 202from the target information resource. For example, upon detecting that auser of the “Seinology” website has responded to the question containedin second natural language query 202, the media guidance application mayretrieve the answer and generate the answer for display so that the useris provided with an answer to second natural language query 202.

In some embodiments, when retrieving and generating for display theanswer to second natural language query 202, the media guidanceapplication detects using the target information resource locator, asubmission of the answer to second natural language query 202 at thetarget information resource. For example, the media guidance applicationmay periodically poll the natural language query locator that the mediaguidance application previously received. In other examples, the mediaguidance application may receive a transmission of the answer for secondnatural language query 202 from the internet resource.

In some embodiments, the media guidance application, in response todetecting the submission of the answer, calculates a reliability metricof the answer. As used herein, the term “reliability metric” is ameasure of the likelihood that a given answer is correct and complete.For example, in some internet resources, such as internet forums andsocial networks, a correct answer to a natural language query usuallypercolates after a number of users submit an answer to second naturallanguage query 202. A correct answer may be detected using variousmethods. In one example, users may utilize an “up-vote” function to giveweight to an answer that they consider to be correct, such that thenumber of up-votes associated with the answer determines the reliabilitymetric. As used herein, an “up-voting” reflects the process of a userassigning weight to answers that the user believes to be correct. Inanother example, the last answer posted in a forum thread of answers maybe the correct answer, as no other user may have felt the need tocorrect or clarify the last answer. In yet another example, a totalnumber of queries previously answered by a user associated with theanswer may be considered when determining the reliability metric.Because internet forums usually attract power users, who considerthemselves to be subject matter experts in certain specific fields andwho actively contribute to discussions in those fields, the mediaguidance application may consider an answer provided by a user with ahigh number of queries previously answered to be more accurate than ananswer provided by a user who provided only a handful of answers. Inanother example, should the media guidance application determine a highnumber of responses generated to second natural language query 202, themedia guidance application may calculate a lower reliability metric.This is because a question that generates a large discussion may becontroversial or difficult to answer. In fact, it is possible thatsecond natural language query 202 may have several correct answers. Insuch cases, the media guidance application may transmit the entire setof answers generated in response to second natural language query 202 inorder to provide the user with a full set of information from which theuser can draw conclusions. The reliability metric may also be determinedby the number of views of the answer. For example, if an answer hasreceived a high number of views without subsequent postings attemptingto correct or clarify the answer, the media guidance application maydetermine that a large pool of users determined that the answer wascorrect and that the users viewing the answer did not have the need toclarify or correct the answer. By calculating the reliability metric ofthe answer, the media guidance application is able to determine whetherthe answer is ready to be presented to the user, and whether to continuewaiting for a subsequent answer that may clarify or correct the firstanswer.

In some embodiments, the media guidance application determines whetherthe reliability metric meets a reliability threshold. As describedabove, the reliability metric may be calculated using such factors asthe number of up-votes associated with the answer, the total number ofqueries previously answered by a user associated with the answer, andthe number of replies posted to the answer. The media guidanceapplication may set thresholds for each factor when making thedetermination whether the answer is correct (i.e., whether thereliability metric meets a reliability threshold). For example, themedia guidance application may determine, based on an analysis ofpreviously answered questions, that a question that has received twoup-votes has a fifty percent likelihood of being correct. Accordingly,when basing the reliability metric on up-votes, the media guidanceapplication may then set the reliability threshold to two. Over time,the media guidance application may receive feedback from the user inrelation to whether the media guidance is retrieving the correctanswers. In such a way, the media guidance application may utilizemachine learning processes to determine the threshold automatically. Forexample, the media guidance application may set the reliabilitythreshold to indicate that the user associated with the answer must haveat least five previous responses in order for the media guidanceapplication to consider the respective answer to be correct. Should theuser provide feedback to the media guidance application indicating thata number of corresponding answers, posted in response to further naturallanguage queries submitted by the user, is incorrect, the media guidanceapplication may in turn increase the threshold so that the mediaguidance application only considers an answer to be correct when theassociated user had posted at least twenty answers. The media guidanceapplication may also receive an indication from the user with respect tosetting a reliability metric threshold. The media guidance applicationmay use one or more reliability metrics and the correspondingreliability metric thresholds to maximize the likelihood that the mediaguidance application provides the correct answer to the user.

In some embodiments, in response to determining that the reliabilitymetric meets or exceeds the reliability threshold, the media guidanceapplication retrieves the answer from the target information resource.For example, upon detecting that a user of the “Seinfeld Forums” websitehas responded to the question contained in second natural language query202, the media guidance application may retrieve the answer and generatethe answer for display so that the user is provided with an answer tosecond natural language query 202.

FIG. 4 shows an illustrative example of a display screen that may beused to display the answer to the second natural language query, inaccordance with some embodiments of the disclosure. In some embodiments,in response to determining that the reliability metric meets or exceedsthe reliability threshold, the media guidance generates for display theanswer to second natural language query 202. For example, the mediaguidance application may detect that a user of the “Seinfeld Forums”website has provided an answer to second natural language query 202(e.g., “What's the name of the Seinfeld episode in which Kramer has ajob in an office?”). Further, the media guidance application may detectthe submission of answer 404 (e.g., “Bizarro Jerry”) provided by a user(e.g., “SeinfeldGuru”), and that answer 404 is associated with a highreliability metric, because the associated user has provided one hundredresponses in the past. Media guidance application may compare thereliability metric to a threshold (e.g., fifty answers), and mayretrieve the answer from the server. The media guidance application maythen generate answer 404 on the display screen 400. The media guidanceapplication may present additional information that may be helpful indescribing the context of the answer to the user, such as the name ofthe user who provided the answer and the name of the target informationresource.

FIG. 5 shows an illustrative example of a display screen generated bythe media guidance application in response to retrieving an answer tothe second natural language query, in accordance with some embodimentsof the disclosure. For example, upon detecting that answer 404 isavailable, media guidance application may alert the user. For example,media guidance application may display message 502 to alert the userthat the media guidance application has retrieved an answer to secondnatural language query 202. Message 502 may be overlaid on top ofplaying media. The media guidance application may then receive aselection of message 502. In response, media guidance application maygenerate for display a screen such as that depicted in FIG. 4 or FIG. 5,discussed below. Should media guidance application detect that the useris currently not interacting with the media guidance application or userequipment, media guidance application may generate for display message502 at the next occasion during which the user begins interacting withmedia guidance application.

FIG. 6 shows another illustrative example of a display screen that maybe used to display the answer to the second natural language query, inaccordance with some embodiments of the disclosure. In some embodiments,in response to determining that the reliability metric meets or exceedsthe reliability threshold, the media guidance generates for display theanswer to second natural language query 202. Media guidance applicationmay generate for display area 606 with selectable options forinteracting with answer 604. For example, the media guidance applicationmay generate for display options 608 and 610 to enable the user toprovide feedback with respect to answer 604. For example, when the mediaguidance application receives a selection of option 608 (“No”, inresponse to the question regarding the accuracy of answer 605), themedia guidance application may use the feedback to adjust a threshold,as discussed above. The media guidance application may also generate fordisplay options 612, 614, 616, and 618. When receiving a selection ofoption 612, the media guidance application may launch a video-on-demandapplication in order to identify the media asset associated with answer604 (e.g. Seinfeld episode “Bizarro Jerry”). The media guidanceapplication may also search program guide information to identify acorresponding media asset when the media guidance application receives aselection of option 614. The media guidance application may add themedia asset corresponding to answer 604 when the media guidanceapplication receives a selection of option 618.

In some embodiments, the media guidance application may present option608 and option 610 only once the user finishes consumption of the mediaasset associated with answer 604. For example, the media guidanceapplication may receive a selection of option 612 and may launch avideo-on-demand application to play the media asset associated withanswer 604. Should the media guidance application determine that theuser has finished watching the media asset, the media guidanceapplication may present option 608 and option 610 to determine whetherthe user considers the answer to be correct. For example, should theuser determine that the media asset corresponding to answer 604 (e.g.Seinfeld episode “Bizarro Jerry”) contains content relevant to theuser's second natural language query 202 (e.g., “What's the name of theSeinfeld episode in which Kramer has a job in an office?”), the user mayprovide feedback via option 608 indicating that the provided answer 604was in fact correct. In such a way, the media guidance application mayutilize machine learning processes to determine a reliability threshold,as is discussed in detail above. For example, the media guidanceapplication may set the reliability threshold to indicate that the userassociated with the answer is reliable and must have three previousresponses in order for the media guidance application to consider therespective answer of that user to be correct.

In some embodiments, the media guidance application may enable the userto award points to the user with whom answer 604 is associated. Forexample, upon receiving a selection of option 616, media guidance maycommunicate with the information resource which the media guidanceapplication retrieved answer 604 from and indicate that thecorresponding user should be awarded points for answering the questioncorrectly. A point system may incentivize expert users to answerquestions appearing on information resources.

In some embodiments, once the user is satisfied with the answer, mediaguidance application may receive an indication associated with area 620,by which the user may express interest in returning to the activity heor she was performing before reviewing the answer to the second naturallanguage query.

The amount of content available to users in any given content deliverysystem can be substantial. Consequently, many users desire a form ofmedia guidance through an interface that allows users to efficientlynavigate content selections and easily identify content that they maydesire. An application that provides such guidance is referred to hereinas an interactive media guidance application or, sometimes, a mediaguidance application or a guidance application.

Interactive media guidance applications may take various forms dependingon the content for which they provide guidance. One typical type ofmedia guidance application is an interactive television program guide.Interactive television program guides (sometimes referred to aselectronic program guides) are well-known guidance applications that,among other things, allow users to navigate among and locate many typesof content or media assets. Interactive media guidance applications maygenerate graphical user interface screens that enable a user to navigateamong, locate and select content. As referred to herein, the terms“media asset” and “content” should be understood to mean anelectronically consumable user asset, such as television programming, aswell as pay-per-view programs, on-demand programs (as in video-on-demand(VOD) systems), Internet content (e.g., streaming content, downloadablecontent, Webcasts, etc.), video clips, audio, content information,pictures, rotating images, documents, playlists, websites, articles,books, electronic books, blogs, chat sessions, social media,applications, games, and/or any other media or multimedia and/orcombination of the same. Guidance applications also allow users tonavigate among and locate content. As referred to herein, the term“multimedia” should be understood to mean content that utilizes at leasttwo different content forms described above, for example, text, audio,images, video, or interactivity content forms. Content may be recorded,played, displayed or accessed by user equipment devices, but can also bepart of a live performance.

The media guidance application and/or any instructions for performingany of the embodiments discussed herein may be encoded on computerreadable media. Computer readable media includes any media capable ofstoring data. The computer readable media may be transitory, including,but not limited to, propagating electrical or electromagnetic signals,or may be non-transitory including, but not limited to, volatile andnon-volatile computer memory or storage devices such as a hard disk,floppy disk, USB drive, DVD, CD, media cards, register memory, processorcaches, Random Access Memory (“RAM”), etc.

With the advent of the Internet, mobile computing, and high-speedwireless networks, users are accessing media on user equipment deviceson which they traditionally did not. As referred to herein, the phrase“user equipment device,” “user equipment,” “user device,” “electronicdevice,” “electronic equipment,” “media equipment device,” or “mediadevice” should be understood to mean any device for accessing thecontent described above, such as a television, a Smart TV, a set-topbox, an integrated receiver decoder (IRD) for handling satellitetelevision, a digital storage device, a digital media receiver (DMR), adigital media adapter (DMA), a streaming media device, a DVD player, aDVD recorder, a connected DVD, a local media server, a BLU-RAY player, aBLU-RAY recorder, a personal computer (PC), a laptop computer, a tabletcomputer, a WebTV box, a personal computer television (PC/TV), a PCmedia server, a PC media center, a hand-held computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smart phone, or any other television equipment, computingequipment, or wireless device, and/or combination of the same. In someembodiments, the user equipment device may have a front facing screenand a rear facing screen, multiple front screens, or multiple angledscreens. In some embodiments, the user equipment device may have a frontfacing camera and/or a rear facing camera. On these user equipmentdevices, users may be able to navigate among and locate the same contentavailable through a television. Consequently, media guidance may beavailable on these devices, as well. The guidance provided may be forcontent available only through a television, for content available onlythrough one or more of other types of user equipment devices, or forcontent available both through a television and one or more of the othertypes of user equipment devices. The media guidance applications may beprovided as on-line applications (i.e., provided on a web-site), or asstand-alone applications or clients on user equipment devices. Variousdevices and platforms that may implement media guidance applications aredescribed in more detail below.

One of the functions of the media guidance application is to providemedia guidance data to users. As referred to herein, the phrase “mediaguidance data” or “guidance data” should be understood to mean any datarelated to content or data used in operating the guidance application.For example, the guidance data may include program information, guidanceapplication settings, user preferences, user profile information, medialistings, media-related information (e.g., broadcast times, broadcastchannels, titles, descriptions, ratings information (e.g., parentalcontrol ratings, critic's ratings, etc.), genre or category information,actor information, logo data for broadcasters' or providers' logos,etc.), media format (e.g., standard definition, high definition, 3D,etc.), on-demand information, blogs, websites, and any other type ofguidance data that is helpful for a user to navigate among and locatedesired content selections.

FIGS. 7-8 show illustrative display screens that may be used to providemedia guidance data. The display screens shown in FIGS. 7-8 may beimplemented on any suitable user equipment device or platform. While thedisplays of FIGS. 7-8 are illustrated as full screen displays, they mayalso be fully or partially overlaid over content being displayed. A usermay indicate a desire to access content information by selecting aselectable option provided in a display screen (e.g., a menu option, alistings option, an icon, a hyperlink, etc.) or pressing a dedicatedbutton (e.g., a GUIDE button) on a remote control or other user inputinterface or device. In response to the user's indication, the mediaguidance application may provide a display screen with media guidancedata organized in one of several ways, such as by time and channel in agrid, by time, by channel, by source, by content type, by category(e.g., movies, sports, news, children, or other categories ofprogramming), or other predefined, user-defined, or other organizationcriteria.

FIG. 7 shows illustrative grid of a program listings display 700arranged by time and channel that also enables access to different typesof content in a single display. Display 700 may include grid 702 with:(1) a column of channel/content type identifiers 704, where eachchannel/content type identifier (which is a cell in the column)identifies a different channel or content type available; and (2) a rowof time identifiers 706, where each time identifier (which is a cell inthe row) identifies a time block of programming. Grid 702 also includescells of program listings, such as program listing 708, where eachlisting provides the title of the program provided on the listing'sassociated channel and time. With a user input device, a user can selectprogram listings by moving highlight region 710. Information relating tothe program listing selected by highlight region 710 may be provided inprogram information region 712. Region 712 may include, for example, theprogram title, the program description, the time the program is provided(if applicable), the channel the program is on (if applicable), theprogram's rating, and other desired information.

In addition to providing access to linear programming (e.g., contentthat is scheduled to be transmitted to a plurality of user equipmentdevices at a predetermined time and is provided according to aschedule), the media guidance application also provides access tonon-linear programming (e.g., content accessible to a user equipmentdevice at any time and is not provided according to a schedule).Non-linear programming may include content from different contentsources including on-demand content (e.g., VOD), Internet content (e.g.,streaming media, downloadable media, etc.), locally stored content(e.g., content stored on any user equipment device described above orother storage device), or other time-independent content. On-demandcontent may include movies or any other content provided by a particularcontent provider (e.g., HBO On Demand providing “The Sopranos” and “CurbYour Enthusiasm”). HBO ON DEMAND is a service mark owned by Time WarnerCompany L.P. et al. and THE SOPRANOS and CURB YOUR ENTHUSIASM aretrademarks owned by the Home Box Office, Inc. Internet content mayinclude web events, such as a chat session or Webcast, or contentavailable on-demand as streaming content or downloadable content throughan Internet web site or other Internet access (e.g. FTP).

Grid 702 may provide media guidance data for non-linear programmingincluding on-demand listing 714, recorded content listing 716, andInternet content listing 718. A display combining media guidance datafor content from different types of content sources is sometimesreferred to as a “mixed-media” display. Various permutations of thetypes of media guidance data that may be displayed that are differentthan display 700 may be based on user selection or guidance applicationdefinition (e.g., a display of only recorded and broadcast listings,only on-demand and broadcast listings, etc.). As illustrated, listings714, 716, and 718 are shown as spanning the entire time block displayedin grid 702 to indicate that selection of these listings may provideaccess to a display dedicated to on-demand listings, recorded listings,or Internet listings, respectively. In some embodiments, listings forthese content types may be included directly in grid 702. Additionalmedia guidance data may be displayed in response to the user selectingone of the navigational icons 720. (Pressing an arrow key on a userinput device may affect the display in a similar manner as selectingnavigational icons 720.)

Display 700 may also include video region 722, and options region 726.Video region 722 may allow the user to view and/or preview programs thatare currently available, will be available, or were available to theuser. The content of video region 722 may correspond to, or beindependent from, one of the listings displayed in grid 702. Griddisplays including a video region are sometimes referred to aspicture-in-guide (PIG) displays. PIG displays and their functionalitiesare described in greater detail in Satterfield et al. U.S. Pat. No.6,564,378, issued May 13, 2003 and Yuen et al. U.S. Pat. No. 6,239,794,issued May 29, 2001, which are hereby incorporated by reference hereinin their entireties. PIG displays may be included in other mediaguidance application display screens of the embodiments describedherein.

Options region 726 may allow the user to access different types ofcontent, media guidance application displays, and/or media guidanceapplication features. Options region 726 may be part of display 700 (andother display screens described herein), or may be invoked by a user byselecting an on-screen option or pressing a dedicated or assignablebutton on a user input device. The selectable options within optionsregion 726 may concern features related to program listings in grid 702or may include options available from a main menu display. Featuresrelated to program listings may include searching for other air times orways of receiving a program, recording a program, enabling seriesrecording of a program, setting program and/or channel as a favorite,purchasing a program, or other features. Options available from a mainmenu display may include search options, VOD options, parental controloptions, Internet options, cloud-based options, device synchronizationoptions, second screen device options, options to access various typesof media guidance data displays, options to subscribe to a premiumservice, options to edit a user's profile, options to access a browseoverlay, or other options.

The media guidance application may be personalized based on a user'spreferences. A personalized media guidance application allows a user tocustomize displays and features to create a personalized “experience”with the media guidance application. This personalized experience may becreated by allowing a user to input these customizations and/or by themedia guidance application monitoring user activity to determine varioususer preferences. Users may access their personalized guidanceapplication by logging in or otherwise identifying themselves to theguidance application. Customization of the media guidance applicationmay be made in accordance with a user profile. The customizations mayinclude varying presentation schemes (e.g., color scheme of displays,font size of text, etc.), aspects of content listings displayed (e.g.,only HDTV or only 3D programming, user-specified broadcast channelsbased on favorite channel selections, re-ordering the display ofchannels, recommended content, etc.), desired recording features (e.g.,recording or series recordings for particular users, recording quality,etc.), parental control settings, customized presentation of Internetcontent (e.g., presentation of social media content, e-mail,electronically delivered articles, etc.) and other desiredcustomizations.

The media guidance application may allow a user to provide user profileinformation or may automatically compile user profile information. Themedia guidance application may, for example, monitor the content theuser accesses and/or other interactions the user may have with theguidance application. Additionally, the media guidance application mayobtain all or part of other user profiles that are related to aparticular user (e.g., from other web sites on the Internet the useraccesses, such as www.allrovi.com, from other media guidanceapplications the user accesses, from other interactive applications theuser accesses, from another user equipment device of the user, etc.),and/or obtain information about the user from other sources that themedia guidance application may access. As a result, a user can beprovided with a unified guidance application experience across theuser's different user equipment devices. This type of user experience isdescribed in greater detail below in connection with FIG. 10. Additionalpersonalized media guidance application features are described ingreater detail in Ellis et al., U.S. Patent Application Publication No.2005/0251827, filed Jul. 11, 2005, Boyer et al., U.S. Pat. No.7,165,098, issued Jan. 16, 2007, and Ellis et al., U.S. PatentApplication Publication No. 2002/0174430, filed Feb. 21, 2002, which arehereby incorporated by reference herein in their entireties.

Another display arrangement for providing media guidance is shown inFIG. 8. Video mosaic display 800 includes selectable options 802 forcontent information organized based on content type, genre, and/or otherorganization criteria. In display 800, television listings option 804 isselected, thus providing listings 806, 808, 810, and 812 as broadcastprogram listings. In display 800 the listings may provide graphicalimages including cover art, still images from the content, video clippreviews, live video from the content, or other types of content thatindicate to a user the content being described by the media guidancedata in the listing. Each of the graphical listings may also beaccompanied by text to provide further information about the contentassociated with the listing. For example, listing 808 may include morethan one portion, including media portion 814 and text portion 816.Media portion 814 and/or text portion 816 may be selectable to viewcontent in full-screen or to view information related to the contentdisplayed in media portion 814 (e.g., to view listings for the channelthat the video is displayed on).

The listings in display 800 are of different sizes (i.e., listing 806 islarger than listings 808, 810, and 812), but if desired, all thelistings may be the same size. Listings may be of different sizes orgraphically accentuated to indicate degrees of interest to the user orto emphasize certain content, as desired by the content provider orbased on user preferences. Various systems and methods for graphicallyaccentuating content listings are discussed in, for example, Yates, U.S.Patent Application Publication No. 2010/0153885, filed Nov. 12, 2009,which is hereby incorporated by reference herein in its entirety.

Users may access content and the media guidance application (and itsdisplay screens described above and below) from one or more of theiruser equipment devices. FIG. 9 shows a generalized embodiment ofillustrative user equipment device 900. More specific implementations ofuser equipment devices are discussed below in connection with FIG. 10.User equipment device 900 may receive content and data via input/output(hereinafter “I/O”) path 902. I/O path 902 may provide content (e.g.,broadcast programming, on-demand programming, Internet content, contentavailable over a local area network (LAN) or wide area network (WAN),and/or other content) and data to control circuitry 904, which includesprocessing circuitry 906 and storage 908. Control circuitry 904 may beused to send and receive commands, requests, and other suitable datausing I/O path 902. I/O path 902 may connect control circuitry 904 (andspecifically processing circuitry 906) to one or more communicationspaths (described below). I/O functions may be provided by one or more ofthese communications paths, but are shown as a single path in FIG. 9 toavoid overcomplicating the drawing.

Control circuitry 904 may be based on any suitable processing circuitrysuch as processing circuitry 906. As referred to herein, processingcircuitry should be understood to mean circuitry based on one or moremicroprocessors, microcontrollers, digital signal processors,programmable logic devices, field-programmable gate arrays (FPGAs),application-specific integrated circuits (ASICs), etc., and may includea multi-core processor (e.g., dual-core, quad-core, hexa-core, or anysuitable number of cores) or supercomputer. In some embodiments,processing circuitry may be distributed across multiple separateprocessors or processing units, for example, multiple of the same typeof processing units (e.g., two Intel Core i7 processors) or multipledifferent processors (e.g., an Intel Core i5 processor and an Intel Corei7 processor). In some embodiments, control circuitry 904 executesinstructions for a media guidance application stored in memory (i.e.,storage 908). Specifically, control circuitry 904 may be instructed bythe media guidance application to perform the functions discussed aboveand below. For example, the media guidance application may provideinstructions to control circuitry 904 to generate the media guidancedisplays. In some implementations, any action performed by controlcircuitry 904 may be based on instructions received from the mediaguidance application.

In client-server based embodiments, control circuitry 904 may includecommunications circuitry suitable for communicating with a guidanceapplication server or other networks or servers. The instructions forcarrying out the above mentioned functionality may be stored on theguidance application server. Communications circuitry may include acable modem, an integrated services digital network (ISDN) modem, adigital subscriber line (DSL) modem, a telephone modem, Ethernet card,or a wireless modem for communications with other equipment, or anyother suitable communications circuitry. Such communications may involvethe Internet or any other suitable communications networks or paths(which is described in more detail in connection with FIG. 10). Inaddition, communications circuitry may include circuitry that enablespeer-to-peer communication of user equipment devices, or communicationof user equipment devices in locations remote from each other (describedin more detail below).

Memory may be an electronic storage device provided as storage 908 thatis part of control circuitry 904. As referred to herein, the phrase“electronic storage device” or “storage device” should be understood tomean any device for storing electronic data, computer software, orfirmware, such as random-access memory, read-only memory, hard drives,optical drives, digital video disc (DVD) recorders, compact disc (CD)recorders, BLU-RAY disc (BD) recorders, BLU-RAY 3D disc recorders,digital video recorders (DVR, sometimes called a personal videorecorder, or PVR), solid state devices, quantum storage devices, gamingconsoles, gaming media, or any other suitable fixed or removable storagedevices, and/or any combination of the same. Storage 908 may be used tostore various types of content described herein as well as mediaguidance data described above. Nonvolatile memory may also be used(e.g., to launch a boot-up routine and other instructions). Cloud-basedstorage, described in relation to FIG. 10, may be used to supplementstorage 908 or instead of storage 908.

Control circuitry 904 may include video generating circuitry and tuningcircuitry, such as one or more analog tuners, one or more MPEG-2decoders or other digital decoding circuitry, high-definition tuners, orany other suitable tuning or video circuits or combinations of suchcircuits. Encoding circuitry (e.g., for converting over-the-air, analog,or digital signals to MPEG signals for storage) may also be provided.Control circuitry 904 may also include scaler circuitry for upconvertingand downconverting content into the preferred output format of the userequipment 900. Circuitry 904 may also include digital-to-analogconverter circuitry and analog-to-digital converter circuitry forconverting between digital and analog signals. The tuning and encodingcircuitry may be used by the user equipment device to receive and todisplay, to play, or to record content. The tuning and encodingcircuitry may also be used to receive guidance data. The circuitrydescribed herein, including for example, the tuning, video generating,encoding, decoding, encrypting, decrypting, scaler, and analog/digitalcircuitry, may be implemented using software running on one or moregeneral purpose or specialized processors. Multiple tuners may beprovided to handle simultaneous tuning functions (e.g., watch and recordfunctions, picture-in-picture (PIP) functions, multiple-tuner recording,etc.). If storage 908 is provided as a separate device from userequipment 900, the tuning and encoding circuitry (including multipletuners) may be associated with storage 908.

A user may send instructions to control circuitry 904 using user inputinterface 910. User input interface 910 may be any suitable userinterface, such as a remote control, mouse, trackball, keypad, keyboard,touch screen, touchpad, stylus input, joystick, voice recognitioninterface, or other user input interfaces. Display 912 may be providedas a stand-alone device or integrated with other elements of userequipment device 900. For example, display 912 may be a touchscreen ortouch-sensitive display. In such circumstances, user input interface 910may be integrated with or combined with display 912. Display 912 may beone or more of a monitor, a television, a liquid crystal display (LCD)for a mobile device, amorphous silicon display, low temperature polysilicon display, electronic ink display, electrophoretic display, activematrix display, electro-wetting display, electrofluidic display, cathoderay tube display, light-emitting diode display, electroluminescentdisplay, plasma display panel, high-performance addressing display,thin-film transistor display, organic light-emitting diode display,surface-conduction electron-emitter display (SED), laser television,carbon nanotubes, quantum dot display, interferometric modulatordisplay, or any other suitable equipment for displaying visual images.In some embodiments, display 912 may be HDTV-capable. In someembodiments, display 912 may be a 3D display, and the interactive mediaguidance application and any suitable content may be displayed in 3D. Avideo card or graphics card may generate the output to the display 912.The video card may offer various functions such as accelerated renderingof 3D scenes and 2D graphics, MPEG-2/MPEG-4 decoding, TV output, or theability to connect multiple monitors. The video card may be anyprocessing circuitry described above in relation to control circuitry904. The video card may be integrated with the control circuitry 904.Speakers 914 may be provided as integrated with other elements of userequipment device 900 or may be stand-alone units. The audio component ofvideos and other content displayed on display 912 may be played throughspeakers 914. In some embodiments, the audio may be distributed to areceiver (not shown), which processes and outputs the audio via speakers914.

The guidance application may be implemented using any suitablearchitecture. For example, it may be a stand-alone applicationwholly-implemented on user equipment device 900. In such an approach,instructions of the application are stored locally (e.g., in storage908), and data for use by the application is downloaded on a periodicbasis (e.g., from an out-of-band feed, from an Internet resource, orusing another suitable approach). Control circuitry 904 may retrieveinstructions of the application from storage 908 and process theinstructions to generate any of the displays discussed herein. Based onthe processed instructions, control circuitry 904 may determine whataction to perform when input is received from input interface 910. Forexample, movement of a cursor on a display up/down may be indicated bythe processed instructions when input interface 910 indicates that anup/down button was selected.

In some embodiments, the media guidance application is a client-serverbased application. Data for use by a thick or thin client implemented onuser equipment device 900 is retrieved on-demand by issuing requests toa server remote to the user equipment device 900. In one example of aclient-server based guidance application, control circuitry 904 runs aweb browser that interprets web pages provided by a remote server. Forexample, the remote server may store the instructions for theapplication in a storage device. The remote server may process thestored instructions using circuitry (e.g., control circuitry 904) andgenerate the displays discussed above and below. The client device mayreceive the displays generated by the remote server and may display thecontent of the displays locally on equipment device 900. This way, theprocessing of the instructions is performed remotely by the server whilethe resulting displays are provided locally on equipment device 900.Equipment device 900 may receive inputs from the user via inputinterface 910 and transmit those inputs to the remote server forprocessing and generating the corresponding displays. For example,equipment device 900 may transmit a communication to the remote serverindicating that an up/down button was selected via input interface 910.The remote server may process instructions in accordance with that inputand generate a display of the application corresponding to the input(e.g., a display that moves a cursor up/down). The generated display isthen transmitted to equipment device 900 for presentation to the user.

In some embodiments, the media guidance application is downloaded andinterpreted or otherwise run by an interpreter or virtual machine (runby control circuitry 904). In some embodiments, the guidance applicationmay be encoded in the ETV Binary Interchange Format (EBIF), received bycontrol circuitry 904 as part of a suitable feed, and interpreted by auser agent running on control circuitry 904. For example, the guidanceapplication may be an EBIF application. In some embodiments, theguidance application may be defined by a series of JAVA-based files thatare received and run by a local virtual machine or other suitablemiddleware executed by control circuitry 904. In some of suchembodiments (e.g., those employing MPEG-2 or other digital mediaencoding schemes), the guidance application may be, for example, encodedand transmitted in an MPEG-2 object carousel with the MPEG audio andvideo packets of a program.

User equipment device 900 of FIG. 9 can be implemented in system 1000 ofFIG. 10 as user television equipment 1002, user computer equipment 1004,wireless user communications device 1006, or any other type of userequipment suitable for accessing content, such as a non-portable gamingmachine. For simplicity, these devices may be referred to hereincollectively as user equipment or user equipment devices, and may besubstantially similar to user equipment devices described above. Userequipment devices, on which a media guidance application may beimplemented, may function as a standalone device or may be part of anetwork of devices. Various network configurations of devices may beimplemented and are discussed in more detail below.

A user equipment device utilizing at least some of the system featuresdescribed above in connection with FIG. 9 may not be classified solelyas user television equipment 1002, user computer equipment 1004, or awireless user communications device 1006. For example, user televisionequipment 1002 may, like some user computer equipment 1004, beInternet-enabled allowing for access to Internet content, while usercomputer equipment 1004 may, like some television equipment 1002,include a tuner allowing for access to television programming. The mediaguidance application may have the same layout on various different typesof user equipment or may be tailored to the display capabilities of theuser equipment. For example, on user computer equipment 1004, theguidance application may be provided as a web site accessed by a webbrowser. In another example, the guidance application may be scaled downfor wireless user communications devices 1006.

In system 1000, there is typically more than one of each type of userequipment device but only one of each is shown in FIG. 10 to avoidovercomplicating the drawing. In addition, each user may utilize morethan one type of user equipment device and also more than one of eachtype of user equipment device.

In some embodiments, a user equipment device (e.g., user televisionequipment 1002, user computer equipment 1004, wireless usercommunications device 1006) may be referred to as a “second screendevice.” For example, a second screen device may supplement contentpresented on a first user equipment device. The content presented on thesecond screen device may be any suitable content that supplements thecontent presented on the first device. In some embodiments, the secondscreen device provides an interface for adjusting settings and displaypreferences of the first device. In some embodiments, the second screendevice is configured for interacting with other second screen devices orfor interacting with a social network. The second screen device can belocated in the same room as the first device, a different room from thefirst device but in the same house or building, or in a differentbuilding from the first device.

The user may also set various settings to maintain consistent mediaguidance application settings across in-home devices and remote devices.Settings include those described herein, as well as channel and programfavorites, programming preferences that the guidance applicationutilizes to make programming recommendations, display preferences, andother desirable guidance settings. For example, if a user sets a channelas a favorite on, for example, the web site www.allrovi.com on theirpersonal computer at their office, the same channel would appear as afavorite on the user's in-home devices (e.g., user television equipmentand user computer equipment) as well as the user's mobile devices, ifdesired. Therefore, changes made on one user equipment device can changethe guidance experience on another user equipment device, regardless ofwhether they are the same or a different type of user equipment device.In addition, the changes made may be based on settings input by a user,as well as user activity monitored by the guidance application.

The user equipment devices may be coupled to communications network1014. Namely, user television equipment 1002, user computer equipment1004, and wireless user communications device 1006 are coupled tocommunications network 1014 via communications paths 1008, 1010, and1012, respectively. Communications network 1014 may be one or morenetworks including the Internet, a mobile phone network, mobile voice ordata network (e.g., a 4G or LTE network), cable network, public switchedtelephone network, or other types of communications network orcombinations of communications networks. Paths 1008, 1010, and 1012 mayseparately or together include one or more communications paths, suchas, a satellite path, a fiber-optic path, a cable path, a path thatsupports Internet communications (e.g., IPTV), free-space connections(e.g., for broadcast or other wireless signals), or any other suitablewired or wireless communications path or combination of such paths. Path1012 is drawn with dotted lines to indicate that in the exemplaryembodiment shown in FIG. 10 it is a wireless path and paths 1008 and1010 are drawn as solid lines to indicate they are wired paths (althoughthese paths may be wireless paths, if desired). Communications with theuser equipment devices may be provided by one or more of thesecommunications paths, but are shown as a single path in FIG. 10 to avoidovercomplicating the drawing.

Although communications paths are not drawn between user equipmentdevices, these devices may communicate directly with each other viacommunication paths, such as those described above in connection withpaths 1008, 1010, and 1012, as well as other short-range point-to-pointcommunication paths, such as USB cables, IEEE 1394 cables, wirelesspaths (e.g., Bluetooth, infrared, IEEE 802-11x, etc.), or othershort-range communication via wired or wireless paths. BLUETOOTH is acertification mark owned by Bluetooth SIG, INC. The user equipmentdevices may also communicate with each other directly through anindirect path via communications network 1014.

System 1000 includes content source 1016 and media guidance data source1018 coupled to communications network 1014 via communication paths 1020and 1022, respectively. Paths 1020 and 1022 may include any of thecommunication paths described above in connection with paths 1008, 1010,and 1012. Communications with the content source 1016 and media guidancedata source 1018 may be exchanged over one or more communications paths,but are shown as a single path in FIG. 10 to avoid overcomplicating thedrawing. In addition, there may be more than one of each of contentsource 1016 and media guidance data source 1018, but only one of each isshown in FIG. 10 to avoid overcomplicating the drawing. (The differenttypes of each of these sources are discussed below.) If desired, contentsource 1016 and media guidance data source 1018 may be integrated as onesource device. Although communications between sources 1016 and 1018with user equipment devices 1002, 1004, and 1006 are shown as throughcommunications network 1014, in some embodiments, sources 1016 and 1018may communicate directly with user equipment devices 1002, 1004, and1006 via communication paths (not shown) such as those described abovein connection with paths 1008, 1010, and 1012.

Content source 1016 may include one or more types of contentdistribution equipment including a television distribution facility,cable system headend, satellite distribution facility, programmingsources (e.g., television broadcasters, such as NBC, ABC, HBO, etc.),intermediate distribution facilities and/or servers, Internet providers,on-demand media servers, and other content providers. NBC is a trademarkowned by the National Broadcasting Company, Inc., ABC is a trademarkowned by the American Broadcasting Company, Inc., and HBO is a trademarkowned by the Home Box Office, Inc. Content source 1016 may be theoriginator of content (e.g., a television broadcaster, a Webcastprovider, etc.) or may not be the originator of content (e.g., anon-demand content provider, an Internet provider of content of broadcastprograms for downloading, etc.). Content source 1016 may include cablesources, satellite providers, on-demand providers, Internet providers,over-the-top content providers, or other providers of content. Contentsource 1016 may also include a remote media server used to storedifferent types of content (including video content selected by a user),in a location remote from any of the user equipment devices. Systems andmethods for remote storage of content, and providing remotely storedcontent to user equipment are discussed in greater detail in connectionwith Ellis et al., U.S. Pat. No. 7,761,892, issued Jul. 20, 2010, whichis hereby incorporated by reference herein in its entirety.

Media guidance data source 1018 may provide media guidance data, such asthe media guidance data described above. Media guidance data may beprovided to the user equipment devices using any suitable approach. Insome embodiments, the guidance application may be a stand-aloneinteractive television program guide that receives program guide datavia a data feed (e.g., a continuous feed or trickle feed). Programschedule data and other guidance data may be provided to the userequipment on a television channel sideband, using an in-band digitalsignal, using an out-of-band digital signal, or by any other suitabledata transmission technique. Program schedule data and other mediaguidance data may be provided to user equipment on multiple analog ordigital television channels.

In some embodiments, guidance data from media guidance data source 1018may be provided to users' equipment using a client-server approach. Forexample, a user equipment device may pull media guidance data from aserver, or a server may push media guidance data to a user equipmentdevice. In some embodiments, a guidance application client residing onthe user's equipment may initiate sessions with source 1018 to obtainguidance data when needed, e.g., when the guidance data is out of dateor when the user equipment device receives a request from the user toreceive data. Media guidance may be provided to the user equipment withany suitable frequency (e.g., continuously, daily, a user-specifiedperiod of time, a system-specified period of time, in response to arequest from user equipment, etc.). Media guidance data source 1018 mayprovide user equipment devices 1002, 1004, and 1006 the media guidanceapplication itself or software updates for the media guidanceapplication.

In some embodiments, the media guidance data may include viewer data.For example, the viewer data may include current and/or historical useractivity information (e.g., what content the user typically watches,what times of day the user watches content, whether the user interactswith a social network, at what times the user interacts with a socialnetwork to post information, what types of content the user typicallywatches (e.g., pay TV or free TV), mood, brain activity information,etc.). The media guidance data may also include subscription data. Forexample, the subscription data may identify to which sources or servicesa given user subscribes and/or to which sources or services the givenuser has previously subscribed but later terminated access (e.g.,whether the user subscribes to premium channels, whether the user hasadded a premium level of services, whether the user has increasedInternet speed). In some embodiments, the viewer data and/or thesubscription data may identify patterns of a given user for a period ofmore than one year. The media guidance data may include a model (e.g., asurvivor model) used for generating a score that indicates a likelihooda given user will terminate access to a service/source. For example, themedia guidance application may process the viewer data with thesubscription data using the model to generate a value or score thatindicates a likelihood of whether the given user will terminate accessto a particular service or source. In particular, a higher score mayindicate a higher level of confidence that the user will terminateaccess to a particular service or source. Based on the score, the mediaguidance application may generate promotions that entice the user tokeep the particular service or source indicated by the score as one towhich the user will likely terminate access.

Media guidance applications may be, for example, stand-aloneapplications implemented on user equipment devices. For example, themedia guidance application may be implemented as software or a set ofexecutable instructions which may be stored in storage 908, and executedby control circuitry 904 of a user equipment device 900. In someembodiments, media guidance applications may be client-serverapplications where only a client application resides on the userequipment device, and server application resides on a remote server. Forexample, media guidance applications may be implemented partially as aclient application on control circuitry 904 of user equipment device 900and partially on a remote server as a server application (e.g., mediaguidance data source 1018) running on control circuitry of the remoteserver. When executed by control circuitry of the remote server (such asmedia guidance data source 1018), the media guidance application mayinstruct the control circuitry to generate the guidance applicationdisplays and transmit the generated displays to the user equipmentdevices. The server application may instruct the control circuitry ofthe media guidance data source 1018 to transmit data for storage on theuser equipment. The client application may instruct control circuitry ofthe receiving user equipment to generate the guidance applicationdisplays.

Content and/or media guidance data delivered to user equipment devices1002, 1004, and 1006 may be over-the-top (OTT) content. OTT contentdelivery allows Internet-enabled user devices, including any userequipment device described above, to receive content that is transferredover the Internet, including any content described above, in addition tocontent received over cable or satellite connections. OTT content isdelivered via an Internet connection provided by an Internet serviceprovider (ISP), but a third party distributes the content. The ISP maynot be responsible for the viewing abilities, copyrights, orredistribution of the content, and may only transfer IP packets providedby the OTT content provider. Examples of OTT content providers includeYOUTUBE, NETFLIX, and HULU, which provide audio and video via IPpackets. Youtube is a trademark owned by Google Inc., Netflix is atrademark owned by Netflix Inc., and Hulu is a trademark owned by Hulu,LLC. OTT content providers may additionally or alternatively providemedia guidance data described above. In addition to content and/or mediaguidance data, providers of OTT content can distribute media guidanceapplications (e.g., web-based applications or cloud-based applications),or the content can be displayed by media guidance applications stored onthe user equipment device.

Media guidance system 1000 is intended to illustrate a number ofapproaches, or network configurations, by which user equipment devicesand sources of content and guidance data may communicate with each otherfor the purpose of accessing content and providing media guidance. Theembodiments described herein may be applied in any one or a subset ofthese approaches, or in a system employing other approaches fordelivering content and providing media guidance. The following fourapproaches provide specific illustrations of the generalized example ofFIG. 10.

In one approach, user equipment devices may communicate with each otherwithin a home network. User equipment devices can communicate with eachother directly via short-range point-to-point communication schemesdescribed above, via indirect paths through a hub or other similardevice provided on a home network, or via communications network 1014.Each of the multiple individuals in a single home may operate differentuser equipment devices on the home network. As a result, it may bedesirable for various media guidance information or settings to becommunicated between the different user equipment devices. For example,it may be desirable for users to maintain consistent media guidanceapplication settings on different user equipment devices within a homenetwork, as described in greater detail in Ellis et al., U.S. PatentPublication No. 2005/0251827, filed Jul. 11, 2005. Different types ofuser equipment devices in a home network may also communicate with eachother to transmit content. For example, a user may transmit content fromuser computer equipment to a portable video player or portable musicplayer.

In a second approach, users may have multiple types of user equipment bywhich they access content and obtain media guidance. For example, someusers may have home networks that are accessed by in-home and mobiledevices. Users may control in-home devices via a media guidanceapplication implemented on a remote device. For example, users mayaccess an online media guidance application on a website via a personalcomputer at their office, or a mobile device such as a PDA orweb-enabled mobile telephone. The user may set various settings (e.g.,recordings, reminders, or other settings) on the online guidanceapplication to control the user's in-home equipment. The online guidemay control the user's equipment directly, or by communicating with amedia guidance application on the user's in-home equipment. Varioussystems and methods for user equipment devices communicating, where theuser equipment devices are in locations remote from each other, isdiscussed in, for example, Ellis et al., U.S. Pat. No. 8,046,801, issuedOct. 25, 2011, which is hereby incorporated by reference herein in itsentirety.

In a third approach, users of user equipment devices inside and outsidea home can use their media guidance application to communicate directlywith content source 1016 to access content. Specifically, within a home,users of user television equipment 1002 and user computer equipment 1004may access the media guidance application to navigate among and locatedesirable content. Users may also access the media guidance applicationoutside of the home using wireless user communications devices 1006 tonavigate among and locate desirable content.

In a fourth approach, user equipment devices may operate in a cloudcomputing environment to access cloud services. In a cloud computingenvironment, various types of computing services for content sharing,storage or distribution (e.g., video sharing sites or social networkingsites) are provided by a collection of network-accessible computing andstorage resources, referred to as “the cloud.” For example, the cloudcan include a collection of server computing devices, which may belocated centrally or at distributed locations, that provide cloud-basedservices to various types of users and devices connected via a networksuch as the Internet via communications network 1014. These cloudresources may include one or more content sources 1016 and one or moremedia guidance data sources 1018. In addition or in the alternative, theremote computing sites may include other user equipment devices, such asuser television equipment 1002, user computer equipment 1004, andwireless user communications device 1006. For example, the other userequipment devices may provide access to a stored copy of a video or astreamed video. In such embodiments, user equipment devices may operatein a peer-to-peer manner without communicating with a central server.

The cloud provides access to services, such as content storage, contentsharing, or social networking services, among other examples, as well asaccess to any content described above, for user equipment devices.Services can be provided in the cloud through cloud computing serviceproviders, or through other providers of online services. For example,the cloud-based services can include a content storage service, acontent sharing site, a social networking site, or other services viawhich user-sourced content is distributed for viewing by others onconnected devices. These cloud-based services may allow a user equipmentdevice to store content to the cloud and to receive content from thecloud rather than storing content locally and accessing locally-storedcontent.

A user may use various content capture devices, such as camcorders,digital cameras with video mode, audio recorders, mobile phones, andhandheld computing devices, to record content. The user can uploadcontent to a content storage service on the cloud either directly, forexample, from user computer equipment 1004 or wireless usercommunications device 1006 having content capture feature.Alternatively, the user can first transfer the content to a userequipment device, such as user computer equipment 1004. The userequipment device storing the content uploads the content to the cloudusing a data transmission service on communications network 1014. Insome embodiments, the user equipment device itself is a cloud resource,and other user equipment devices can access the content directly fromthe user equipment device on which the user stored the content.

Cloud resources may be accessed by a user equipment device using, forexample, a web browser, a media guidance application, a desktopapplication, a mobile application, and/or any combination of accessapplications of the same. The user equipment device may be a cloudclient that relies on cloud computing for application delivery, or theuser equipment device may have some functionality without access tocloud resources. For example, some applications running on the userequipment device may be cloud applications, i.e., applications deliveredas a service over the Internet, while other applications may be storedand run on the user equipment device. In some embodiments, a user devicemay receive content from multiple cloud resources simultaneously. Forexample, a user device can stream audio from one cloud resource whiledownloading content from a second cloud resource. Or a user device candownload content from multiple cloud resources for more efficientdownloading. In some embodiments, user equipment devices can use cloudresources for processing operations such as the processing operationsperformed by processing circuitry described in relation to FIG. 9.

As referred herein, the term “in response to” refers to initiated as aresult of. For example, a first action being performed in response to asecond action may include interstitial steps between the first actionand the second action. As referred herein, the term “directly inresponse to” refers to caused by. For example, a first action beingperformed directly in response to a second action may not includeinterstitial steps between the first action and the second action.

FIG. 11 is a flowchart of illustrative steps for identifying resourcesfor answering natural language queries, in accordance with someembodiments of the disclosure. Process 1100 begins at 1102, wherecontrol circuitry 904, performing the functions of the media guidanceapplication, receives a first natural language query, such as firstnatural language query 106. User equipment 102 may include anycapability described with respect to user equipment 1002, 1004, and/or1006. Control circuitry 904 receives first natural language query 106 byway of user input interface 910. For example, as depicted in FIG. 1,control circuitry 904 receives first natural language query 106 (e.g.,“What's the name of the Seinfeld episode in which Kramer gets a job?”)by way of touch screen 104.

Process 1100 then continues to 1104, where control circuitry 904retrieves a first search result for the first natural language query.Control circuitry 904 retrieves first search result 110 by way ofcommunications network 1014 from a remote source, such as media guidancedata source 1018. Control circuitry 904 retrieves, based on firstnatural language query 106, data corresponding to result 110 (e.g., aresult associated with the Wikipedia entry for “Cosmo Kramer”). Controlcircuitry 904 retrieves data including a result identifier, a hyperlinkassociated with the result, and a description of the result, so as toallow the user to quickly determine the relevance of the result.

Process 1100 then continues to 1106, where control circuitry 904generates for display the first search result. Control circuitry 904generates for display result 110 (e.g., a result associated with theWikipedia entry for “Cosmo Kramer”) on touch screen 104. Controlcircuitry 904 enables the user to interact with the result in order todetermine the relevance of the result. In the event that the user doesnot find the result to be relevant, the process continues to 1108.

At 1108, control circuitry 904 receives a second natural language queryfrom the user. For example, control circuitry 904 receives secondnatural language query 202 by using analogous methods discussed withrespect to first natural language query 106 above.

Process 1100 then continues to 1110, where control circuitry 904determines an association metric relating to a similarity between thefirst natural language query and the second natural language query.Control circuitry 904 computes a string distance metric between firstnatural language query 106 and second natural language query 202 todetermine whether the user is attempting to generate a relevant resultfor the same question using queries 106 and 202. For example, controlcircuitry 904 determines that first natural language query 106 andsecond natural language query 202 share five words that are common toboth queries. Control circuitry 904 sets the association metric to theresult of the calculation of dividing the number of words common to bothnatural language queries by the number of words contained in firstnatural language query 102. For example, control circuitry 904determines that second natural language query 202 contains sixteenwords. Control circuitry 904 then sets the association metric to theresult of dividing the number of words common to both natural languagequeries 102 and 206 (e.g., six words) by the number of words in secondnatural language query 202 (e.g., sixteen words). In this example, theresult of the calculation is 0.375, and control circuitry 904 sets theassociation metric to this value.

If, at 1112, control circuitry 904 determines that the associationmetric meets or exceeds a threshold, process 1110 continues to 1114.Control circuitry 904 first retrieves a threshold stored in a storagedevice 908, and compares the threshold to the association metricdetermined in 1110. When the association metric does not meet thethreshold, second natural language query 202 is likely directed to adifferent question than first natural language query 102. Should controlcircuitry 904 find that the association metric does not meet or exceedthe threshold, process 1100 returns to 1102 in order to monitor naturallanguage queries that are subsequently entered by the user.

Process 1100 then continues to 1114, where control circuitry 904identifies a target media asset type corresponding to the second naturallanguage query. For example, control circuitry 904 analyzes keywordscorresponding to second natural language query 202 in order to determinethat second natural language query 202 contains the “episode” keyword.Further, control circuitry 904 establishes that a natural language querythat contains an “episode” keyword should be associated with a “TVSeries” media type. The control circuitry 904 stores, in storage 908, adirectory of media asset types. Control circuitry 904 associates, in thedirectory of media asset types, keywords that correspond to eachrespective asset type. For example, the control circuitry 904 associatesa “TV Series” media type with keywords such as “episode,” “season,”“finale,” and “pilot.” Alternatively, control circuitry 904 connects,via communications network 1014, to media guidance data source 1016. Inthis case, control circuitry 904 the queries media guidance data sourceto identify the type of media asset that corresponds to the keyword“episode,” or any other keyword present in second natural language query202.

Process 1100 then continues to 1116, where control circuitry 904identifies a target media name corresponding to the second naturallanguage query. For example, after control circuitry 904 determines thatthe media type corresponding to the second natural language query 202 is“TV Series,” the control circuitry 904 identifies media records in thedirectory of media asset names, stored in storage 908, that correspondto the “Kramer” keyword of second natural language query 202. Forexample, control circuitry 904 identifies that the keyword “Kramer”corresponds to the TV Series show “Seinfeld.” Control circuitry 904determines the media asset name using various methods. In one example,control circuitry 904 stores, in the directory of media asset names, anumber of corresponding keywords of different attributes, such as“actors,” “character names,” “episode names,” “host,” and the like.Control circuitry 904 correlates the media asset name “Seinfeld” to thekeyword “Kramer,” which is of the “character name” type. In such a way,control circuitry 904 effectively organizes and maintains keywords inthe directory of media asset names. As discussed above with relation to1114, control circuitry 904 may also connect to media guidance datasource 1018, should media asset types and media asset names becorrelated on a remote server corresponding the media guidance datasource 1018.

Process 1100 then continues to 1118, where control circuitry 904accesses a database of information resources. Each information resourcein the database is associated with a media asset type, a media name, andan information resource locator. For example, control circuitry 904determines that an information resource is associated with a media assettype corresponding to “TV Series,” and media name “Seinfeld.” Thedatabase of information resources is stored in storage 908, but it mayalso be stored in a remote location accessible via communicationsnetwork 1014 instead, such as media guidance data source 1018. Byidentifying and accessing an information resource, the control circuitry904 is able to locate a highly relevant set of information that is mostlikely to provide an answer to second natural language query 202.

Process 1100 then continues to 1120, where control circuitry 904retrieves a target information resource associated with the target mediaasset type and target media asset name. For example, control circuitry904 retrieves, from the database stored in storage 908, the name of atarget information resource that is associated with a media asset typecorresponding to “TV Series” and media name “Seinfeld.” For example,control circuitry 904 determines that the information resource name is“Seinfeld Forums,” a popular Seinfeld-oriented web site hosted by thewebsite www.TV.com.

Process 1100 then continues to 1122, where control circuitry 904transmits to the target information resource the second natural languagequery using a target information resource locator. For example, controlcircuitry 904 transmits, to the target information resource, secondnatural language query 202 using a target information resource locatorassociated with the target information resource. The target informationresource locator indicates a location on communications network 1014that corresponds to the target information resource. For example,control circuitry 904 determines that in order to generate an answer tosecond natural language query 202 (e.g., “What's the name of theSeinfeld episode in which Kramer has a job in an office?”), controlcircuitry 904 should transmit second natural language query 202 to aspecific target information resource. Control circuitry 904 determinesthat second natural language query 202 should be transmitted to apopular forum (e.g., “Seinfeld Forums”). The control circuitry 904 thendetermines a target information resource locator associated with thetarget information resource. The database of information resourcesincludes an entry corresponding to the target information resource(e.g., “www.tv.com/seinfeld”) that indicates the network location towhich control circuitry 904 transmits second natural language query 202.The control circuitry 904 then uses an HTTP post command to transmitsecond natural language query 202 to the target information resource(e.g., www.tv.com/seinfeld).

Process 1100 then continues to 1124, where control circuitry 904retrieves and generates for display an answer to the second naturallanguage query from the target information resource. When retrieving andgenerating for display the answer to the first natural language query,control circuitry 904 detects, using the target information resourcelocator, a submission of answer 404 to second natural language query 202at the target information resource. Control circuitry 904 periodicallypolls the target media resource by sending queries over communicationnetwork 1014. Once control circuitry 904 retrieves answer 404, controlcircuitry 904 generates answer 404 for display on display 912 of userequipment 102.

FIG. 12 is a flowchart of illustrative steps for determining anassociation metric between two natural language queries, in accordancewith some embodiments of the disclosure. By determining that two naturallanguage queries are similar, control circuitry 904 can infer that theuser is unsuccessfully attempting to search for the same question, andcontrol circuitry 904 can route the natural language query to a specificresource that is most likely to provide a prompt and correct answer.Process 1200 begins at 1202, where the control circuitry 904 retrievesthe keywords present in first natural language query 106. Usingtokenization, control circuitry 904 breaks up first natural languagequery 106 (e.g., “What's the name of the Seinfeld episode in whichKramer gets a job?”) into individual keywords to form a first set ofkeywords, which includes keywords such as “gets,” “Seinfeld,” “episode,”and “job.” control circuitry 904 stores the keywords in a data structureassociated with first natural language query 106, in storage 908.

Process 1200 then continues to 1204, where control circuitry 904retrieves the keywords present in the second natural language query.Control circuitry 904 determines a second set of keywords present insecond natural language query 202 (e.g., “What's the name of theSeinfeld episode in which Kramer has a job in an office?”) by breakingup second natural language query 202 into individual keywords to form asecond set of keywords, which includes keywords such as “has,”“Seinfeld,” “episode,” and “work.” As discussed above, control circuitry904 stores the keywords in a data structure associated with firstnatural language query 106, in storage 908.

Process 1200 then continues to 1206, where control circuitry 904 removesinsignificant keywords from the first natural query and the secondnatural query. Control circuitry 904 processes each keyword to maximizethe probability that non-identical keywords relating to the same conceptin both natural language queries are successfully matched. Controlcircuitry 904 ensures that punctuation is removed from each keyword,because the user relates to the same word by inputting keywords thatinclude arbitrary punctuation structures (e.g., keyword “Kramer's” andkeyword “Kramers” both relate to the same concept). Control circuitry904 also removes the keywords of lowest significance value such asarticles (e.g., “a” and “the”), because an article match is unlikely tofactor into the similarity determination of two queries. Controlcircuitry 904 then identifies the parts of speech (e.g., nouns, verbs,adjectives, etc.) to which each keyword belongs to. Control circuitry904 processes each keyword relating to an identified part of speech suchthat the keyword appears in the base or infinitive case. Controlcircuitry 904 detects the keywords “gets” and “got” in the set ofkeywords. Using a dictionary accessed from storage 908, or on a remoteserver that control circuitry 904 accesses via communications network1014, control circuitry 904 determines that both keywords relate to theinfinitive word form “have,” and replaces both keywords with theinfinitive form. In such a way, control circuitry 904 ensures that auser's rephrasing of the same word in both queries can be detected andconsidered when control circuitry 904 calculates the association metric.

Process 1200 then continues to 1208, where control circuitry 904determines a number of keywords in common between the first naturallanguage query and the second natural language query. Control circuitry904 determines that the first set of keywords contains the keywords“name,” “Seinfeld,” “episode,” and “job,” and the second set of keywordscontains the keywords “name,” “Seinfeld,” “episode,” and “work,” controlcircuitry 904 concludes that three out of the four keywords in the firstset are matched and are thus common to both the first natural languagequery 106 and second natural language query 202.

Process 1200 then continues to 1210, where control circuitry 904determines the number of keywords in the second query. Control circuitry904 determines the number of keywords in second natural language query202 in order to figure out whether the number of keywords in commonbetween first natural language query 106 and second natural languagequery 202 is significant in view of the length of second naturallanguage query 202. For example, control circuitry 904 calculates aratio between the number of matched keywords and the number of keywordsin the second set corresponding to the second natural language query202. In this example, second natural language query 202 determines thatthe number of keywords in the second set is four.

Process 1200 then continues to 1212, where control circuitry 904computes an association metric by dividing the number of keywords incommon by the number of keywords in the second query. Thus, controlcircuitry 904 calculates a ratio between the number of matched keywordsand the number of keywords in the second set that is useful indetermining whether the first natural language query 106 and secondnatural language query 202 are directed to the same question. Thus,control circuitry 904 calculates the value of the ratio as 0.75. Controlcircuitry 904 may then associate the value of the ratio with theassociation metric to subsequently determine whether the similarity ofthe two queries meets or exceeds a threshold.

FIG. 13 is a flowchart of illustrative steps for determining aninformation resource associated with a target record. Process 1300begins at 1302, where control circuitry 904 retrieves a record from thedatabase of information resources. The database is stored in storage908, however, the database may be located in a server accessible throughcommunications network 1014, such as a server associated with mediaguidance data source 1018. Control circuitry 904, after retrieving therecord from the database, determines that the record contains fieldsdescribing a media asset type, a media asset name, and an informationresource, however, control circuitry 904 may retrieve other data relatedto the information in the record.

At 1304, control circuitry 904 determines whether the media asset typeof the record matches the target media asset type. Control circuitry 904first determines that the target media asset type of second naturallanguage query 202 is “TV Series,” as previously described in relationto FIG. 2. Control circuitry 904 then determines whether the fieldcorresponding to the media asset type of the retrieved record matchesthe target media asset type (e.g., “TV Series”), and process 1300proceeds to 1306. Should control circuitry 904 determine that the mediaasset type of the retrieved record does not match the target media assettype, process 1300 returns to 1302.

If, at 1306, control circuitry 904 determines that the media asset nameof the record match the target media asset name, process 1300 proceedsto 1308. For example, control circuitry 904 determines that the targetmedia asset name of second natural language query 202 is “Seinfeld,” aspreviously described in relation to FIG. 2. Control circuitry 904 thendetermines whether the field corresponding to the media asset name ofthe retrieved record matches the target media asset type (e.g.,“Seinfeld”), and process 1300 proceeds to 1308. Should control circuitry904 determine that the media asset name of the retrieved record does notmatch the target media asset type, process 1300 returns to 1302.

Process 1300 then continues to 1308, where control circuitry 904determines a significance factor of the record. Control circuitry 904first retrieves an information resource (e.g., “Seinfeld Forums”) thatcorresponds to the record. Control circuitry 904 calculates asignificance value associated with the first potential targetinformation resource, wherein the first significance value predictswhether second natural language query 202 will be answered correctly andpromptly using the information resource associated with the record.Control circuitry 904 calculates the significance value based on amembership count associated with the information resource associatedwith the record. Control circuitry 904 determines the membership countby querying a server using communications network 1014. When controlcircuitry 904 calculates the first significance value based on themembership count associated with the target information resource, a highmembership count is indicative of a higher significance value. Controlcircuitry 904 sets the significance value to a ratio reflecting aproportion of the membership count associated with the targetinformation resource and a predetermined membership count associatedwith a group of information resources known to host large communities ofusers who provide quick and prompt replies to queries.

Process 1300 then continues to 1310, where control circuitry 904 addsthe record to a set of candidate records. Control circuitry 904 storesthe record in a set of candidate records in storage 908. The processthen continues to 1312.

If, at 1312, control circuitry 904 determines that an additional recordfor retrieval exists in the database, process 1300 returns to 1302.Otherwise, process 1300 proceeds to 1314.

At 1304, control circuitry 904 determines the target record with thehighest significance value. Control circuitry queries database 908 toidentify two records from the set of candidate records. Controlcircuitry 904 then compares the significance value of the first record(e.g., “Seinfeld Forums”) and determines that the significance value isgreater than the significance value of the second record (e.g.,Seinology”).

It should be noted that processes 1100-1300 or any step thereof could beperformed on, or provided by, any of the devices shown in FIG. 1 andFIGS. 9-10. For example, any of processes 1100-1300 may be executed bycontrol circuitry 904 (FIG. 9) as instructed by control circuitryimplemented on user equipment 1002, 1004, and/or 1006 (FIG. 10) in orderto ensure media borrowed by a user is returned to its rightful owner. Inaddition, one or more steps of processes 1100-1300 may be incorporatedinto or combined with one or more steps of any other process orembodiment.

It is contemplated that the steps or descriptions of each of FIGS. 11-13may be used with any other embodiment of this disclosure. In addition,the steps and descriptions described in relation to FIGS. 11-13 may bedone in alternative orders or in parallel to further the purposes ofthis disclosure. For example, each of these steps may be performed inany order or in parallel or substantially simultaneously to reduce lagor increase the speed of the system or method. Furthermore, it should benoted that any of the devices or equipment discussed in relation to FIG.1 and FIGS. 9-10 could be used to perform one or more of the steps inFIGS. 11-13.

It will be apparent to those of ordinary skill in the art that methodsinvolved in the present invention may be embodied in a computer programproduct that includes a computer-usable and/or readable medium. Forexample, such a computer-usable medium may consist of a read-only memorydevice, such as a CD-ROM disk or conventional ROM device, or a randomaccess memory, such as a hard drive device or a computer diskette,having a computer-readable program code stored thereon. It should alsobe understood that methods, techniques, and processes involved in thepresent invention may be executed using processing circuitry. Forinstance, determining whether an estimated time of arrival precedes abroadcast time of a preferred program may be performed, e.g., byprocessing circuitry 906 of FIG. 9. The processing circuitry, forinstance, may be a general purpose processor, a customized integratedcircuit (e.g., an ASIC), or a field-programmable gate array (FPGA)within user equipment 900, media content source 1016, or media guidancedata source 1018. For example, a user profile, as described herein, maybe stored in, and retrieved from, storage 908 of FIG. 9, or mediaguidance data source 1018 of FIG. 10. Furthermore, processing circuitry,or a computer program, may update settings associated with a user, suchas a register of media assets stored on user equipment, updating theinformation stored within storage 908 of FIG. 9 or media guidance datasource 1018 of FIG. 10.

The processes discussed above are intended to be illustrative and notlimiting. One skilled in the art would appreciate that the steps of theprocesses discussed herein may be omitted, modified, combined, and/orrearranged, and any additional steps may be performed without departingfrom the scope of the invention. More generally, the above disclosure ismeant to be exemplary and not limiting. Only the claims that follow aremeant to set bounds as to what the present invention includes.Furthermore, it should be noted that the features and limitationsdescribed in any one embodiment may be applied to any other embodimentherein, and flowcharts or examples relating to one embodiment may becombined with any other embodiment in a suitable manner, done indifferent orders, or done in parallel. In addition, the systems andmethods described herein may be performed in real time. It should alsobe noted, the systems and/or methods described above may be applied to,or used in accordance with, other systems and/or methods.

1. A method for identifying information resources for answering naturallanguage queries, the method comprising: receiving a first naturallanguage query from a user; retrieving a first search result for thefirst natural language query; generating for display the first searchresult; receiving a second natural language query from the user;determining an association metric relating to a similarity between thefirst natural language query and the second natural language query;determining whether the association metric meets or exceeds a threshold;in response to determining that the association metric meets or exceedsthe threshold: identifying a target media asset type corresponding tothe second natural language query, identifying a target media namecorresponding to the second natural language query; accessing a databaseof information resources, wherein each information resource isassociated with a media asset type, a media name, and an informationresource locator; retrieving, from the database of informationresources, a target information resource associated with the targetmedia asset type and target media asset name; transmitting, to thetarget information resource, the second natural language query using atarget information resource locator associated with the targetinformation resource; and retrieving and generating for display ananswer to the second natural language query from the target informationresource. 2-50. (canceled)